use lang_util::position::LexerPosition;
use glsl_lang_lexer::{IdentifierContext, Token, HasLexerError};
use crate::{
ast::{self, NodeContent},
parse::ParseContext,
};
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate core;
extern crate alloc;
#[rustfmt::skip]
#[allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens, clippy::all)]
mod __parse__TranslationUnit {
use lang_util::position::LexerPosition;
use glsl_lang_lexer::{IdentifierContext, Token, HasLexerError};
use crate::{
ast::{self, NodeContent},
parse::ParseContext,
};
#[allow(unused_extern_crates)]
extern crate lalrpop_util as __lalrpop_util;
#[allow(unused_imports)]
use self::__lalrpop_util::state_machine as __state_machine;
extern crate core;
extern crate alloc;
use super::__ToTriple;
#[allow(dead_code)]
pub(crate) enum __Symbol<>
{
Variant0(Token),
Variant1(Vec<ast::TypeSpecifier>),
Variant2(core::option::Option<Vec<ast::TypeSpecifier>>),
Variant3(ast::ArrayedIdentifier),
Variant4(alloc::vec::Vec<ast::ArrayedIdentifier>),
Variant5(ast::Expr),
Variant6(alloc::vec::Vec<ast::Expr>),
Variant7(ast::FunctionParameterDeclaration),
Variant8(alloc::vec::Vec<ast::FunctionParameterDeclaration>),
Variant9(ast::Identifier),
Variant10(alloc::vec::Vec<ast::Identifier>),
Variant11(ast::LayoutQualifierSpec),
Variant12(alloc::vec::Vec<ast::LayoutQualifierSpec>),
Variant13(ast::SingleDeclarationNoType),
Variant14(alloc::vec::Vec<ast::SingleDeclarationNoType>),
Variant15(ast::TypeSpecifier),
Variant16(alloc::vec::Vec<ast::TypeSpecifier>),
Variant17(ast::PreprocessorExtensionBehavior),
Variant18(core::option::Option<ast::PreprocessorExtensionBehavior>),
Variant19(ast::Initializer),
Variant20(core::option::Option<ast::Initializer>),
Variant21(alloc::vec::Vec<ast::Initializer>),
Variant22(LexerPosition),
Variant23(ast::Statement),
Variant24(ast::TranslationUnit),
Variant25(ast::ArraySpecifier),
Variant26(core::option::Option<ast::ArraySpecifier>),
Variant27(ast::ArraySpecifierDimension),
Variant28(alloc::vec::Vec<ast::ArraySpecifierDimension>),
Variant29(ast::ArraySpecifierDimensionData),
Variant30(core::option::Option<ast::ArrayedIdentifier>),
Variant31(core::option::Option<ast::Expr>),
Variant32(ast::AssignmentOp),
Variant33(ast::AssignmentOpData),
Variant34(ast::Block),
Variant35(ast::CaseLabel),
Variant36(ast::CaseLabelData),
Variant37(Vec<ast::ArrayedIdentifier>),
Variant38(Vec<ast::Expr>),
Variant39(Vec<ast::FunctionParameterDeclaration>),
Variant40(Vec<ast::Identifier>),
Variant41(Vec<ast::LayoutQualifierSpec>),
Variant42(Vec<ast::Initializer>),
Variant43(ast::CompoundStatement),
Variant44(ast::Condition),
Variant45(core::option::Option<ast::Condition>),
Variant46(ast::ConditionData),
Variant47(ast::Declaration),
Variant48(ast::ExprStatement),
Variant49(Option<ast::ExternalDeclaration>),
Variant50(alloc::vec::Vec<Option<ast::ExternalDeclaration>>),
Variant51(ast::ForInitStatement),
Variant52(ast::ForInitStatementData),
Variant53(ast::ForRestStatement),
Variant54(ast::FullySpecifiedType),
Variant55(ast::FunIdentifier),
Variant56(ast::FunIdentifierData),
Variant57(ast::FunctionDefinition),
Variant58(core::option::Option<ast::FunctionParameterDeclaration>),
Variant59(ast::FunctionParameterDeclarator),
Variant60(ast::FunctionPrototype),
Variant61(core::option::Option<ast::Identifier>),
Variant62(ast::InitDeclaratorList),
Variant63(ast::InitializerData),
Variant64(core::option::Option<Token>),
Variant65(ast::InterpolationQualifier),
Variant66(ast::InterpolationQualifierData),
Variant67(ast::IterationStatement),
Variant68(ast::JumpStatement),
Variant69(ast::JumpStatementData),
Variant70(ast::LayoutQualifier),
Variant71(core::option::Option<ast::LayoutQualifierSpec>),
Variant72(ast::LayoutQualifierSpecData),
Variant73(ast::PreprocessorDefineData),
Variant74(ast::DeclarationData),
Variant75(ast::PrecisionQualifier),
Variant76(ast::PrecisionQualifierData),
Variant77(ast::Preprocessor),
Variant78(ast::PreprocessorDefine),
Variant79(ast::PreprocessorElseIf),
Variant80(ast::PreprocessorError),
Variant81(ast::PreprocessorExtension),
Variant82(ast::PreprocessorExtensionBehaviorData),
Variant83(ast::PreprocessorIf),
Variant84(ast::PreprocessorIfDef),
Variant85(ast::PreprocessorIfNDef),
Variant86(ast::PreprocessorInclude),
Variant87(ast::PreprocessorLine),
Variant88(ast::PreprocessorPragma),
Variant89(ast::PreprocessorUndef),
Variant90(ast::PreprocessorVersion),
Variant91(ast::PreprocessorVersionProfile),
Variant92(core::option::Option<ast::PreprocessorVersionProfile>),
Variant93(ast::PreprocessorVersionProfileData),
Variant94(ast::SelectionStatement),
Variant95(ast::SingleDeclaration),
Variant96(ast::SingleDeclarationData),
Variant97(alloc::vec::Vec<ast::Statement>),
Variant98(ast::StorageQualifier),
Variant99(ast::StorageQualifierData),
Variant100(ast::StructFieldSpecifier),
Variant101(alloc::vec::Vec<ast::StructFieldSpecifier>),
Variant102(ast::StructSpecifier),
Variant103(ast::SwitchStatement),
Variant104(ast::TypeQualifierSpec),
Variant105(core::option::Option<ast::TypeQualifierSpec>),
Variant106(ast::TypeQualifierSpecData),
Variant107(ast::TypeName),
Variant108(ast::TypeQualifier),
Variant109(core::option::Option<ast::TypeQualifier>),
Variant110(alloc::vec::Vec<ast::TypeQualifierSpec>),
Variant111(core::option::Option<ast::TypeSpecifier>),
Variant112(ast::TypeSpecifierNonArray),
Variant113(ast::TypeSpecifierNonArrayData),
Variant114(ast::UnaryOp),
Variant115(ast::UnaryOpData),
}
const __ACTION: &[i16] = &[
0, 0, 10, 11, 161, 162, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 10, 11, 161, 162, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -320, 0, 0, 0, 0, 0, 0, 0, -320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 0, -185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, 0, 0, 167, 0, 0, 0, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 190, 0, 0, 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 245, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 0, 0, 0, 291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 332, 0, 0, 0, 0, 0, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -371, 165, -371, 0, 167, -371, -371, -371, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 0, -371, -371, -371, -371, 0, 0, 0, 190, -371, 0, 192, 0, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 215, 216, -371, 0, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 245, 246, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 287, 288, -371, -371, -371, 291, 0, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 315, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, -371, 332, -371, -371, -371, -371, -371, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, -371, 0, 0, 0, 0, -371, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -383, -383, 0, 0, 0, 0, 0, -383, 0, 0, 0, 0, 0, 0, 0, -383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -383, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 361, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 365, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 373, 374, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 378, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, -366, -366, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, -366, -366, -366, 0, -366, 0, -366, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 435, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -370, 165, -370, 0, 167, -370, -370, -370, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 0, -370, -370, -370, -370, 0, 0, 0, 190, -370, 0, 192, 0, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 215, 216, -370, 0, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 245, 246, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 287, 288, -370, -370, -370, 291, 0, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 315, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, -370, 332, -370, -370, -370, -370, -370, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, -370, 0, 0, 0, 0, -370, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -61, -61, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 448, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -277, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -277, -277, -277, 0, -277, -277, -277, -277, 0, -277, -277, 453, -277, 0, 454, 0, 0, 0, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 0, -277, -277, -277, -277, 0, 0, 455, -277, -277, 0, -277, 0, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 0, -277, 0, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 0, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, -277, 0, 0, -277, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -277, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 465, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -117, 0, 0, 0, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 58, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 478, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -224, 480, -224, -224, 481, 0, -224, -224, 482, -224, 0, 483, -224, -224, 0, 484, 0, -224, 485, -224, -224, -224, -224, 486, -224, 487, -224, -224, -224, -224, 488, -224, 0, -224, -224, 489, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -224, 490, -224, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -109, 0, 0, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 507, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 508, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 514, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 516, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 0, -97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -116, 0, 0, 0, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 58, 0, 0, 0, -121, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -104, 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -173, 0, 0, 0, 0, 0, -173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, -101, 0, 0, 422, 423, 0, 108, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 538, 538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 58, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -108, 0, 0, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 575, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 0, -97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 0, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 58, 0, 0, 0, -123, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -172, 0, 0, 0, 0, 0, -172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -100, 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 343, 0, 0, 0, 0, 0, 0,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, -163, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 123, 186, 187, 188, 189, 0, 0, 0, 190, 191, 615, 192, 616, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 617, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, -161, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 623, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 58, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 43, 186, 187, 188, 189, 0, 0, 0, 190, 191, 431, 192, 432, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 434, 338, 26, 0, 0, 0, 630, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 0, 167, 168, 169, 170, 0, 171, 172, 0, 173, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 190, 191, 0, 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 464, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 0, 264, 0, 265, 0, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 0, 338, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 0, 166, 0, 0, 168, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 0, 186, 187, 188, 189, 0, 0, 0, 0, 191, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, 217, 0, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 0, 0, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, 24, 289, 290, 0, 0, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 0, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 0, 333, 334, 335, 336, 336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 123, 186, 187, 188, 189, 0, 0, 0, 190, 191, 615, 192, 616, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 617, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 123, 186, 187, 188, 189, 0, 0, 0, 190, 191, 615, 192, 616, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 617, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 123, 186, 187, 188, 189, 0, 0, 0, 190, 191, 615, 192, 616, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 617, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 422, 423, 0, 0, 424, 425, 0, 0, 0, 0, 0, 426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 165, 166, 427, 167, 168, 169, 170, 42, 171, 172, 0, 173, 428, 0, 429, 0, 430, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 123, 186, 187, 188, 189, 0, 0, 0, 190, 191, 615, 192, 616, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 22, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 23, 264, 0, 265, 44, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 24, 289, 290, 291, 433, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 336, 337, 0, 617, 338, 26, 0, 0, 0, 0, 436, 437, 438, 439, 343, 440, 0, 0, 0, 339, 441,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -151, -151, -151, 0, -151, -151, -151, -151, 0, -151, -151, 0, -151, 0, 0, 0, 0, 0, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, 0, -151, -151, -151, -151, 0, 0, 0, -151, -151, 0, -151, 0, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, 0, -151, 0, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, 0, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, -151, 0, 0, -151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -151, 0,
0, 0, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -155, -155, -155, 0, -155, -155, -155, -155, 0, -155, -155, 0, -155, 0, 0, 0, 0, 0, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, 0, -155, -155, -155, -155, 0, 0, 0, -155, -155, 0, -155, 0, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, 0, -155, 0, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, 0, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, -155, 0, 0, -155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -155, 0,
0, 0, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -150, -150, -150, 0, -150, -150, -150, -150, 0, -150, -150, 0, -150, 0, 0, 0, 0, 0, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, 0, -150, -150, -150, -150, 0, 0, 0, -150, -150, 0, -150, 0, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, 0, -150, 0, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, 0, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, -150, 0, 0, -150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -150, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 346, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -380, -380, -380, 0, -380, -380, -380, -380, 0, -380, -380, 0, -380, 0, 0, 0, 0, 0, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 0, -380, -380, -380, -380, 0, 0, 0, -380, -380, 0, -380, 0, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 0, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 0, -380, 0, -380, 0, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 0, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, -380, 0, 0, -380, 0, 0, 0, 0, 0, 0, 0, 0, 0, -380, 0, 0, 0, 0, -380, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -195, -195, -195, 0, -195, -195, -195, -195, 0, -195, -195, 0, -195, 0, 0, 0, 0, 0, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 0, -195, -195, -195, -195, 0, 0, 0, -195, -195, 0, -195, 0, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 0, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 0, -195, 0, -195, 0, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 0, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, -195, 0, 0, -195, 0, 0, 0, 0, 0, 0, 0, 0, 0, -195, 0, 0, 0, 0, -195, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -378, -378, -378, 0, -378, -378, -378, -378, 0, -378, -378, 0, -378, 0, 0, 0, 0, 0, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 0, -378, -378, -378, -378, 0, 0, 0, -378, -378, 0, -378, 0, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 0, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 0, -378, 0, -378, 0, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 0, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, -378, 0, 0, -378, 0, 0, 0, 0, 0, 0, 0, 0, 0, -378, 0, 0, 0, 0, -378, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -379, -379, -379, 0, -379, -379, -379, -379, 0, -379, -379, 0, -379, 0, 0, 0, 0, 0, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 0, -379, -379, -379, -379, 0, 0, 0, -379, -379, 0, -379, 0, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 0, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 0, -379, 0, -379, 0, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 0, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, -379, 0, 0, -379, 0, 0, 0, 0, 0, 0, 0, 0, 0, -379, 0, 0, 0, 0, -379, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -237, -237, -237, 0, -237, -237, -237, -237, 0, -237, -237, 0, -237, 0, 0, 0, 0, 0, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 0, -237, -237, -237, -237, 0, 0, 0, -237, -237, 0, -237, 0, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 0, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 0, -237, 0, -237, 0, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 0, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, -237, 0, 0, -237, 0, 0, 0, 0, 0, 0, 0, 0, 0, -237, 0, 0, 0, 0, -237, 0,
0, 0, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -149, -149, -149, 0, -149, -149, -149, -149, 0, -149, -149, 0, -149, 0, 0, 0, 0, 0, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, 0, -149, -149, -149, -149, 0, 0, 0, -149, -149, 0, -149, 0, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, 0, -149, 0, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, 0, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, -149, 0, 0, -149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -149, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -317, 0, 0, 0, 0, 0, 0, 0, -317, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -377, -377, -377, 0, -377, -377, -377, -377, 0, -377, -377, 0, -377, 0, 0, 0, 0, 0, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 0, -377, -377, -377, -377, 0, 0, 0, -377, -377, 0, -377, 0, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 0, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 0, -377, 0, -377, 0, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 0, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, -377, 0, 0, -377, 0, 0, 0, 0, 0, 0, 0, 0, 0, -377, 0, 0, 0, 0, -377, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -331, -331, -331, 0, -331, -331, -331, -331, 0, -331, -331, 0, -331, 0, 0, 0, 0, 0, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 0, -331, -331, -331, -331, 0, 0, 0, -331, -331, 0, -331, 0, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 0, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 0, -331, 0, -331, 0, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 0, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, -331, 0, 0, -331, 0, 0, 0, 0, 0, 0, 0, 0, 0, -331, 0, 0, 0, 0, -331, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -387, -387, 0, 0, 0, 0, 0, -387, 0, 0, 0, 0, 0, 0, 0, -387, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -387, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -387, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, 0, 0, -363, 0, 0, 0, 0, -363, -363, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, 0, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, -363, -363, -363, -363, 0, -363, 0, -363, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, -363, 0, 0, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -363, 0, 0, 0, 0, 0, -363, 0, 0, -363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -388, -388, 0, 0, 0, 0, 0, -388, 0, 0, 0, 0, 0, 0, 0, -388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -388, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -375, -375, -375, 0, -375, -375, -375, -375, 0, -375, -375, 0, -375, 0, 0, 0, 0, 0, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 0, -375, -375, -375, -375, 0, 0, 0, -375, -375, 0, -375, 0, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 0, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 0, -375, 0, -375, 0, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 0, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, -375, 0, 0, -375, 0, 0, 0, 0, 0, 0, 0, 0, 0, -375, 0, 0, 0, 0, -375, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -374, -374, -374, 0, -374, -374, -374, -374, 0, -374, -374, 0, -374, 0, 0, 0, 0, 0, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 0, -374, -374, -374, -374, 0, 0, 0, -374, -374, 0, -374, 0, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 0, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 0, -374, 0, -374, 0, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 0, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, -374, 0, 0, -374, 0, 0, 0, 0, 0, 0, 0, 0, 0, -374, 0, 0, 0, 0, -374, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -386, -386, 0, 0, 0, 0, 0, -386, 0, 0, 0, 0, 0, 0, 0, -386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -386, 0, 0, 0, 0, 0, 0,
0, 0, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -242, -242, -242, 0, -242, -242, -242, -242, 0, -242, -242, 0, -242, 0, 0, 0, 0, 0, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 0, -242, -242, -242, -242, 0, 0, 0, -242, -242, 0, -242, 0, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 0, -242, 0, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 0, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, -242, 0, 0, -242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -242, 0,
0, 0, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -244, -244, -244, 0, -244, -244, -244, -244, 0, -244, -244, 0, -244, 0, 0, 0, 0, 0, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 0, -244, -244, -244, -244, 0, 0, 0, -244, -244, 0, -244, 0, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 0, -244, 0, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 0, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, -244, 0, 0, -244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -244, 0,
0, 0, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -152, -152, -152, 0, -152, -152, -152, -152, 0, -152, -152, 0, -152, 0, 0, 0, 0, 0, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, 0, -152, -152, -152, -152, 0, 0, 0, -152, -152, 0, -152, 0, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, 0, -152, 0, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, 0, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, 0, 0, -152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -152, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -485, -485, 0, 0, 0, 0, 0, -485, 0, 0, 0, 0, 0, 0, 0, -485, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -485, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -485, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -347, -347, -347, 0, -347, -347, -347, -347, 0, -347, -347, 0, -347, 0, 0, 0, 0, 0, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, 0, -347, -347, -347, -347, 0, 0, 0, -347, -347, 0, -347, 0, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, 0, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, 0, -347, 0, -347, 0, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, 0, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, -347, 0, 0, -347, 0, 0, 0, 0, 0, 0, 0, 0, 0, -347, 0, 0, 0, 0, -347, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -390, -390, 0, 0, 0, 0, 0, -390, 0, 0, 0, 0, 0, 0, 0, -390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -390, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -340, -340, -340, 0, -340, -340, -340, -340, 0, -340, -340, 0, -340, 0, 0, 0, 0, 0, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 0, -340, -340, -340, -340, 0, 0, 0, -340, -340, 0, -340, 0, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 0, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 0, -340, 0, -340, 0, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 0, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, -340, 0, 0, -340, 0, 0, 0, 0, 0, 0, 0, 0, 0, -340, 0, 0, 0, 0, -340, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -401, -401, 0, 0, 0, 0, 0, -401, 0, 0, 0, 0, 0, 0, 0, -401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -401, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -402, -402, 0, 0, 0, 0, 0, -402, 0, 0, 0, 0, 0, 0, 0, -402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -402, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -403, -403, 0, 0, 0, 0, 0, -403, 0, 0, 0, 0, 0, 0, 0, -403, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -403, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -403, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -336, -336, -336, 0, -336, -336, -336, -336, 0, -336, -336, 0, -336, 0, 0, 0, 0, 0, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 0, -336, -336, -336, -336, 0, 0, 0, -336, -336, 0, -336, 0, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 0, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 0, -336, 0, -336, 0, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 0, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, -336, 0, 0, -336, 0, 0, 0, 0, 0, 0, 0, 0, 0, -336, 0, 0, 0, 0, -336, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -342, -342, -342, 0, -342, -342, -342, -342, 0, -342, -342, 0, -342, 0, 0, 0, 0, 0, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, 0, -342, -342, -342, -342, 0, 0, 0, -342, -342, 0, -342, 0, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, 0, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, 0, -342, 0, -342, 0, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, 0, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, -342, 0, 0, -342, 0, 0, 0, 0, 0, 0, 0, 0, 0, -342, 0, 0, 0, 0, -342, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -332, -332, -332, 0, -332, -332, -332, -332, 0, -332, -332, 0, -332, 0, 0, 0, 0, 0, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 0, -332, -332, -332, -332, 0, 0, 0, -332, -332, 0, -332, 0, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 0, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 0, -332, 0, -332, 0, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 0, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, -332, 0, 0, -332, 0, 0, 0, 0, 0, 0, 0, 0, 0, -332, 0, 0, 0, 0, -332, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -422, -422, 0, 0, 0, 0, 0, -422, 0, 0, 0, 0, 0, 0, 0, -422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -422, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -422, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -425, -425, 0, 0, 0, 0, 0, -425, 0, 0, 0, 0, 0, 0, 0, -425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -425, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -426, -426, 0, 0, 0, 0, 0, -426, 0, 0, 0, 0, 0, 0, 0, -426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -426, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -427, -427, 0, 0, 0, 0, 0, -427, 0, 0, 0, 0, 0, 0, 0, -427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -427, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -427, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -423, -423, 0, 0, 0, 0, 0, -423, 0, 0, 0, 0, 0, 0, 0, -423, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -423, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -423, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -428, -428, 0, 0, 0, 0, 0, -428, 0, 0, 0, 0, 0, 0, 0, -428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -428, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -429, -429, 0, 0, 0, 0, 0, -429, 0, 0, 0, 0, 0, 0, 0, -429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -429, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -429, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -430, -430, 0, 0, 0, 0, 0, -430, 0, 0, 0, 0, 0, 0, 0, -430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -430, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -424, -424, 0, 0, 0, 0, 0, -424, 0, 0, 0, 0, 0, 0, 0, -424, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -424, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -424, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -431, -431, 0, 0, 0, 0, 0, -431, 0, 0, 0, 0, 0, 0, 0, -431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -431, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -432, -432, 0, 0, 0, 0, 0, -432, 0, 0, 0, 0, 0, 0, 0, -432, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -432, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -432, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -433, -433, 0, 0, 0, 0, 0, -433, 0, 0, 0, 0, 0, 0, 0, -433, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -433, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -433, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -394, -394, 0, 0, 0, 0, 0, -394, 0, 0, 0, 0, 0, 0, 0, -394, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -394, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -394, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -398, -398, 0, 0, 0, 0, 0, -398, 0, 0, 0, 0, 0, 0, 0, -398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -398, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -399, -399, 0, 0, 0, 0, 0, -399, 0, 0, 0, 0, 0, 0, 0, -399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -399, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -400, -400, 0, 0, 0, 0, 0, -400, 0, 0, 0, 0, 0, 0, 0, -400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -400, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -197, -197, -197, 0, -197, -197, -197, -197, 0, -197, -197, 0, -197, 0, 0, 0, 0, 0, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 0, -197, -197, -197, -197, 0, 0, 0, -197, -197, 0, -197, 0, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 0, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 0, -197, 0, -197, 0, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 0, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, -197, 0, 0, -197, 0, 0, 0, 0, 0, 0, 0, 0, 0, -197, 0, 0, 0, 0, -197, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -393, -393, 0, 0, 0, 0, 0, -393, 0, 0, 0, 0, 0, 0, 0, -393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -393, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -238, -238, -238, 0, -238, -238, -238, -238, 0, -238, -238, 0, -238, 0, 0, 0, 0, 0, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 0, -238, -238, -238, -238, 0, 0, 0, -238, -238, 0, -238, 0, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 0, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 0, -238, 0, -238, 0, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 0, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, -238, 0, 0, -238, 0, 0, 0, 0, 0, 0, 0, 0, 0, -238, 0, 0, 0, 0, -238, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -464, -464, 0, 0, 0, 0, 0, -464, 0, 0, 0, 0, 0, 0, 0, -464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -464, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -474, -474, 0, 0, 0, 0, 0, -474, 0, 0, 0, 0, 0, 0, 0, -474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -474, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -466, -466, 0, 0, 0, 0, 0, -466, 0, 0, 0, 0, 0, 0, 0, -466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -466, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -476, -476, 0, 0, 0, 0, 0, -476, 0, 0, 0, 0, 0, 0, 0, -476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -476, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -480, -480, 0, 0, 0, 0, 0, -480, 0, 0, 0, 0, 0, 0, 0, -480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -480, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -482, -482, 0, 0, 0, 0, 0, -482, 0, 0, 0, 0, 0, 0, 0, -482, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -482, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -482, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -472, -472, 0, 0, 0, 0, 0, -472, 0, 0, 0, 0, 0, 0, 0, -472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -472, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -468, -468, 0, 0, 0, 0, 0, -468, 0, 0, 0, 0, 0, 0, 0, -468, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -468, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -468, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -478, -478, 0, 0, 0, 0, 0, -478, 0, 0, 0, 0, 0, 0, 0, -478, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -478, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -478, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -470, -470, 0, 0, 0, 0, 0, -470, 0, 0, 0, 0, 0, 0, 0, -470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -470, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -484, -484, 0, 0, 0, 0, 0, -484, 0, 0, 0, 0, 0, 0, 0, -484, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -484, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -484, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -435, -435, 0, 0, 0, 0, 0, -435, 0, 0, 0, 0, 0, 0, 0, -435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -435, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -445, -445, 0, 0, 0, 0, 0, -445, 0, 0, 0, 0, 0, 0, 0, -445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -445, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -437, -437, 0, 0, 0, 0, 0, -437, 0, 0, 0, 0, 0, 0, 0, -437, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -437, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -437, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -447, -447, 0, 0, 0, 0, 0, -447, 0, 0, 0, 0, 0, 0, 0, -447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -447, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -451, -451, 0, 0, 0, 0, 0, -451, 0, 0, 0, 0, 0, 0, 0, -451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -451, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -453, -453, 0, 0, 0, 0, 0, -453, 0, 0, 0, 0, 0, 0, 0, -453, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -453, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -453, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -443, -443, 0, 0, 0, 0, 0, -443, 0, 0, 0, 0, 0, 0, 0, -443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -443, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -439, -439, 0, 0, 0, 0, 0, -439, 0, 0, 0, 0, 0, 0, 0, -439, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -439, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -439, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -449, -449, 0, 0, 0, 0, 0, -449, 0, 0, 0, 0, 0, 0, 0, -449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -449, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -441, -441, 0, 0, 0, 0, 0, -441, 0, 0, 0, 0, 0, 0, 0, -441, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -441, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -441, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -455, -455, 0, 0, 0, 0, 0, -455, 0, 0, 0, 0, 0, 0, 0, -455, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -455, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -455, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -334, -334, -334, 0, -334, -334, -334, -334, 0, -334, -334, 0, -334, 0, 0, 0, 0, 0, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 0, -334, -334, -334, -334, 0, 0, 0, -334, -334, 0, -334, 0, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 0, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 0, -334, 0, -334, 0, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 0, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 0, 0, -334, 0, 0, 0, 0, 0, 0, 0, 0, 0, -334, 0, 0, 0, 0, -334, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -333, -333, -333, 0, -333, -333, -333, -333, 0, -333, -333, 0, -333, 0, 0, 0, 0, 0, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 0, -333, -333, -333, -333, 0, 0, 0, -333, -333, 0, -333, 0, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 0, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 0, -333, 0, -333, 0, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 0, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, -333, 0, 0, -333, 0, 0, 0, 0, 0, 0, 0, 0, 0, -333, 0, 0, 0, 0, -333, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -391, -391, 0, 0, 0, 0, 0, -391, 0, 0, 0, 0, 0, 0, 0, -391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -391, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -463, -463, 0, 0, 0, 0, 0, -463, 0, 0, 0, 0, 0, 0, 0, -463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -463, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -473, -473, 0, 0, 0, 0, 0, -473, 0, 0, 0, 0, 0, 0, 0, -473, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -473, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -473, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -465, -465, 0, 0, 0, 0, 0, -465, 0, 0, 0, 0, 0, 0, 0, -465, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -465, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -465, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -475, -475, 0, 0, 0, 0, 0, -475, 0, 0, 0, 0, 0, 0, 0, -475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -475, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -479, -479, 0, 0, 0, 0, 0, -479, 0, 0, 0, 0, 0, 0, 0, -479, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -479, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -479, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -481, -481, 0, 0, 0, 0, 0, -481, 0, 0, 0, 0, 0, 0, 0, -481, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -481, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -481, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -471, -471, 0, 0, 0, 0, 0, -471, 0, 0, 0, 0, 0, 0, 0, -471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -471, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -471, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -467, -467, 0, 0, 0, 0, 0, -467, 0, 0, 0, 0, 0, 0, 0, -467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -467, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -477, -477, 0, 0, 0, 0, 0, -477, 0, 0, 0, 0, 0, 0, 0, -477, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -477, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -477, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -469, -469, 0, 0, 0, 0, 0, -469, 0, 0, 0, 0, 0, 0, 0, -469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -469, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -483, -483, 0, 0, 0, 0, 0, -483, 0, 0, 0, 0, 0, 0, 0, -483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -483, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -533, -533, 0, 0, 0, 0, 0, -533, 0, 0, 0, 0, 0, 0, 0, -533, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -533, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -533, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -536, -536, 0, 0, 0, 0, 0, -536, 0, 0, 0, 0, 0, 0, 0, -536, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -536, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -536, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -519, -519, 0, 0, 0, 0, 0, -519, 0, 0, 0, 0, 0, 0, 0, -519, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -519, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -519, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -524, -524, 0, 0, 0, 0, 0, -524, 0, 0, 0, 0, 0, 0, 0, -524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -524, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -520, -520, 0, 0, 0, 0, 0, -520, 0, 0, 0, 0, 0, 0, 0, -520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -520, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -525, -525, 0, 0, 0, 0, 0, -525, 0, 0, 0, 0, 0, 0, 0, -525, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -525, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -525, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -527, -527, 0, 0, 0, 0, 0, -527, 0, 0, 0, 0, 0, 0, 0, -527, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -527, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -527, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -528, -528, 0, 0, 0, 0, 0, -528, 0, 0, 0, 0, 0, 0, 0, -528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -528, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -523, -523, 0, 0, 0, 0, 0, -523, 0, 0, 0, 0, 0, 0, 0, -523, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -523, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -523, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -521, -521, 0, 0, 0, 0, 0, -521, 0, 0, 0, 0, 0, 0, 0, -521, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -521, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -521, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -526, -526, 0, 0, 0, 0, 0, -526, 0, 0, 0, 0, 0, 0, 0, -526, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -526, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -526, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -522, -522, 0, 0, 0, 0, 0, -522, 0, 0, 0, 0, 0, 0, 0, -522, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -522, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -522, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -529, -529, 0, 0, 0, 0, 0, -529, 0, 0, 0, 0, 0, 0, 0, -529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -529, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -529, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -404, -404, 0, 0, 0, 0, 0, -404, 0, 0, 0, 0, 0, 0, 0, -404, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -404, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -404, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -405, -405, 0, 0, 0, 0, 0, -405, 0, 0, 0, 0, 0, 0, 0, -405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -405, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -406, -406, 0, 0, 0, 0, 0, -406, 0, 0, 0, 0, 0, 0, 0, -406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -406, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -240, -240, -240, 0, -240, -240, -240, -240, 0, -240, -240, 0, -240, 0, 0, 0, 0, 0, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 0, -240, -240, -240, -240, 0, 0, 0, -240, -240, 0, -240, 0, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 0, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 0, -240, 0, -240, 0, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 0, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, -240, 0, 0, -240, 0, 0, 0, 0, 0, 0, 0, 0, 0, -240, 0, 0, 0, 0, -240, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -410, -410, 0, 0, 0, 0, 0, -410, 0, 0, 0, 0, 0, 0, 0, -410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -410, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -413, -413, 0, 0, 0, 0, 0, -413, 0, 0, 0, 0, 0, 0, 0, -413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -413, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -414, -414, 0, 0, 0, 0, 0, -414, 0, 0, 0, 0, 0, 0, 0, -414, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -414, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -414, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -415, -415, 0, 0, 0, 0, 0, -415, 0, 0, 0, 0, 0, 0, 0, -415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -415, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -411, -411, 0, 0, 0, 0, 0, -411, 0, 0, 0, 0, 0, 0, 0, -411, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -411, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -411, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -416, -416, 0, 0, 0, 0, 0, -416, 0, 0, 0, 0, 0, 0, 0, -416, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -416, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -416, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -417, -417, 0, 0, 0, 0, 0, -417, 0, 0, 0, 0, 0, 0, 0, -417, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -417, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -417, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -418, -418, 0, 0, 0, 0, 0, -418, 0, 0, 0, 0, 0, 0, 0, -418, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -418, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -418, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -412, -412, 0, 0, 0, 0, 0, -412, 0, 0, 0, 0, 0, 0, 0, -412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -412, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -412, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -419, -419, 0, 0, 0, 0, 0, -419, 0, 0, 0, 0, 0, 0, 0, -419, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -419, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -419, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -420, -420, 0, 0, 0, 0, 0, -420, 0, 0, 0, 0, 0, 0, 0, -420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -420, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -421, -421, 0, 0, 0, 0, 0, -421, 0, 0, 0, 0, 0, 0, 0, -421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -421, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -239, -239, -239, 0, -239, -239, -239, -239, 0, -239, -239, 0, -239, 0, 0, 0, 0, 0, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 0, -239, -239, -239, -239, 0, 0, 0, -239, -239, 0, -239, 0, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 0, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 0, -239, 0, -239, 0, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 0, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, -239, 0, 0, -239, 0, 0, 0, 0, 0, 0, 0, 0, 0, -239, 0, 0, 0, 0, -239, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -198, -198, -198, 0, -198, -198, -198, -198, 0, -198, -198, 0, -198, 0, 0, 0, 0, 0, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 0, -198, -198, -198, -198, 0, 0, 0, -198, -198, 0, -198, 0, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 0, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 0, -198, 0, -198, 0, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 0, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, 0, 0, -198, 0, 0, 0, 0, 0, 0, 0, 0, 0, -198, 0, 0, 0, 0, -198, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -335, -335, -335, 0, -335, -335, -335, -335, 0, -335, -335, 0, -335, 0, 0, 0, 0, 0, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 0, -335, -335, -335, -335, 0, 0, 0, -335, -335, 0, -335, 0, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 0, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 0, -335, 0, -335, 0, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 0, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, -335, 0, 0, -335, 0, 0, 0, 0, 0, 0, 0, 0, 0, -335, 0, 0, 0, 0, -335, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -337, -337, -337, 0, -337, -337, -337, -337, 0, -337, -337, 0, -337, 0, 0, 0, 0, 0, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 0, -337, -337, -337, -337, 0, 0, 0, -337, -337, 0, -337, 0, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 0, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 0, -337, 0, -337, 0, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 0, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, -337, 0, 0, -337, 0, 0, 0, 0, 0, 0, 0, 0, 0, -337, 0, 0, 0, 0, -337, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -381, -381, -381, 0, -381, -381, -381, -381, 0, -381, -381, 0, -381, 0, 0, 0, 0, 0, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 0, -381, -381, -381, -381, 0, 0, 0, -381, -381, 0, -381, 0, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 0, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 0, -381, 0, -381, 0, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 0, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, -381, 0, 0, -381, 0, 0, 0, 0, 0, 0, 0, 0, 0, -381, 0, 0, 0, 0, -381, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -345, -345, -345, 0, -345, -345, -345, -345, 0, -345, -345, 0, -345, 0, 0, 0, 0, 0, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, 0, -345, -345, -345, -345, 0, 0, 0, -345, -345, 0, -345, 0, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, 0, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, 0, -345, 0, -345, 0, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, 0, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, 0, 0, -345, 0, 0, 0, 0, 0, 0, 0, 0, 0, -345, 0, 0, 0, 0, -345, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -344, -344, -344, 0, -344, -344, -344, -344, 0, -344, -344, 0, -344, 0, 0, 0, 0, 0, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, 0, -344, -344, -344, -344, 0, 0, 0, -344, -344, 0, -344, 0, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, 0, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, 0, -344, 0, -344, 0, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, 0, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, -344, 0, 0, -344, 0, 0, 0, 0, 0, 0, 0, 0, 0, -344, 0, 0, 0, 0, -344, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -338, -338, -338, 0, -338, -338, -338, -338, 0, -338, -338, 0, -338, 0, 0, 0, 0, 0, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 0, -338, -338, -338, -338, 0, 0, 0, -338, -338, 0, -338, 0, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 0, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 0, -338, 0, -338, 0, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 0, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, -338, 0, 0, -338, 0, 0, 0, 0, 0, 0, 0, 0, 0, -338, 0, 0, 0, 0, -338, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -530, -530, 0, 0, 0, 0, 0, -530, 0, 0, 0, 0, 0, 0, 0, -530, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -530, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -530, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -434, -434, 0, 0, 0, 0, 0, -434, 0, 0, 0, 0, 0, 0, 0, -434, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -434, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -434, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -444, -444, 0, 0, 0, 0, 0, -444, 0, 0, 0, 0, 0, 0, 0, -444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -444, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -459, -459, 0, 0, 0, 0, 0, -459, 0, 0, 0, 0, 0, 0, 0, -459, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -459, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -459, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -456, -456, 0, 0, 0, 0, 0, -456, 0, 0, 0, 0, 0, 0, 0, -456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -456, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -436, -436, 0, 0, 0, 0, 0, -436, 0, 0, 0, 0, 0, 0, 0, -436, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -436, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -436, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -446, -446, 0, 0, 0, 0, 0, -446, 0, 0, 0, 0, 0, 0, 0, -446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -446, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -460, -460, 0, 0, 0, 0, 0, -460, 0, 0, 0, 0, 0, 0, 0, -460, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -460, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -460, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -450, -450, 0, 0, 0, 0, 0, -450, 0, 0, 0, 0, 0, 0, 0, -450, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -450, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -450, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -452, -452, 0, 0, 0, 0, 0, -452, 0, 0, 0, 0, 0, 0, 0, -452, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -452, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -452, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -442, -442, 0, 0, 0, 0, 0, -442, 0, 0, 0, 0, 0, 0, 0, -442, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -442, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -442, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -458, -458, 0, 0, 0, 0, 0, -458, 0, 0, 0, 0, 0, 0, 0, -458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -458, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -457, -457, 0, 0, 0, 0, 0, -457, 0, 0, 0, 0, 0, 0, 0, -457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -457, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -457, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -438, -438, 0, 0, 0, 0, 0, -438, 0, 0, 0, 0, 0, 0, 0, -438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -438, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -448, -448, 0, 0, 0, 0, 0, -448, 0, 0, 0, 0, 0, 0, 0, -448, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -448, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -448, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -440, -440, 0, 0, 0, 0, 0, -440, 0, 0, 0, 0, 0, 0, 0, -440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -440, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -454, -454, 0, 0, 0, 0, 0, -454, 0, 0, 0, 0, 0, 0, 0, -454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -454, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -462, -462, 0, 0, 0, 0, 0, -462, 0, 0, 0, 0, 0, 0, 0, -462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -462, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -461, -461, 0, 0, 0, 0, 0, -461, 0, 0, 0, 0, 0, 0, 0, -461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -461, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -531, -531, 0, 0, 0, 0, 0, -531, 0, 0, 0, 0, 0, 0, 0, -531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -531, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -341, -341, -341, 0, -341, -341, -341, -341, 0, -341, -341, 0, -341, 0, 0, 0, 0, 0, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 0, -341, -341, -341, -341, 0, 0, 0, -341, -341, 0, -341, 0, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 0, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 0, -341, 0, -341, 0, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 0, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, -341, 0, 0, -341, 0, 0, 0, 0, 0, 0, 0, 0, 0, -341, 0, 0, 0, 0, -341, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -196, -196, -196, 0, -196, -196, -196, -196, 0, -196, -196, 0, -196, 0, 0, 0, 0, 0, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 0, -196, -196, -196, -196, 0, 0, 0, -196, -196, 0, -196, 0, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 0, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 0, -196, 0, -196, 0, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 0, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, -196, 0, 0, -196, 0, 0, 0, 0, 0, 0, 0, 0, 0, -196, 0, 0, 0, 0, -196, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -532, -532, 0, 0, 0, 0, 0, -532, 0, 0, 0, 0, 0, 0, 0, -532, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -532, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -532, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -535, -535, 0, 0, 0, 0, 0, -535, 0, 0, 0, 0, 0, 0, 0, -535, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -535, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -535, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -350, -350, -350, 0, -350, -350, -350, -350, 0, -350, -350, 0, -350, 0, 0, 0, 0, 0, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 0, -350, -350, -350, -350, 0, 0, 0, -350, -350, 0, -350, 0, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 0, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 0, -350, 0, -350, 0, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 0, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, -350, 0, 0, -350, 0, 0, 0, 0, 0, 0, 0, 0, 0, -350, 0, 0, 0, 0, -350, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -508, -508, 0, 0, 0, 0, 0, -508, 0, 0, 0, 0, 0, 0, 0, -508, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -508, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -508, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -513, -513, 0, 0, 0, 0, 0, -513, 0, 0, 0, 0, 0, 0, 0, -513, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -513, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -513, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -509, -509, 0, 0, 0, 0, 0, -509, 0, 0, 0, 0, 0, 0, 0, -509, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -509, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -509, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -514, -514, 0, 0, 0, 0, 0, -514, 0, 0, 0, 0, 0, 0, 0, -514, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -514, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -514, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -516, -516, 0, 0, 0, 0, 0, -516, 0, 0, 0, 0, 0, 0, 0, -516, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -516, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -516, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -517, -517, 0, 0, 0, 0, 0, -517, 0, 0, 0, 0, 0, 0, 0, -517, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -517, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -517, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -512, -512, 0, 0, 0, 0, 0, -512, 0, 0, 0, 0, 0, 0, 0, -512, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -512, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -512, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -510, -510, 0, 0, 0, 0, 0, -510, 0, 0, 0, 0, 0, 0, 0, -510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -510, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -515, -515, 0, 0, 0, 0, 0, -515, 0, 0, 0, 0, 0, 0, 0, -515, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -515, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -515, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -511, -511, 0, 0, 0, 0, 0, -511, 0, 0, 0, 0, 0, 0, 0, -511, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -511, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -511, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -518, -518, 0, 0, 0, 0, 0, -518, 0, 0, 0, 0, 0, 0, 0, -518, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -518, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -518, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -487, -487, 0, 0, 0, 0, 0, -487, 0, 0, 0, 0, 0, 0, 0, -487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -487, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -497, -497, 0, 0, 0, 0, 0, -497, 0, 0, 0, 0, 0, 0, 0, -497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -497, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -489, -489, 0, 0, 0, 0, 0, -489, 0, 0, 0, 0, 0, 0, 0, -489, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -489, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -489, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -499, -499, 0, 0, 0, 0, 0, -499, 0, 0, 0, 0, 0, 0, 0, -499, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -499, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -499, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -503, -503, 0, 0, 0, 0, 0, -503, 0, 0, 0, 0, 0, 0, 0, -503, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -503, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -503, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -505, -505, 0, 0, 0, 0, 0, -505, 0, 0, 0, 0, 0, 0, 0, -505, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -505, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -505, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -495, -495, 0, 0, 0, 0, 0, -495, 0, 0, 0, 0, 0, 0, 0, -495, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -495, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -495, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -491, -491, 0, 0, 0, 0, 0, -491, 0, 0, 0, 0, 0, 0, 0, -491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -491, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -491, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -501, -501, 0, 0, 0, 0, 0, -501, 0, 0, 0, 0, 0, 0, 0, -501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -501, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -493, -493, 0, 0, 0, 0, 0, -493, 0, 0, 0, 0, 0, 0, 0, -493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -493, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -507, -507, 0, 0, 0, 0, 0, -507, 0, 0, 0, 0, 0, 0, 0, -507, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -507, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -507, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -392, -392, 0, 0, 0, 0, 0, -392, 0, 0, 0, 0, 0, 0, 0, -392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -392, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -339, -339, -339, 0, -339, -339, -339, -339, 0, -339, -339, 0, -339, 0, 0, 0, 0, 0, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 0, -339, -339, -339, -339, 0, 0, 0, -339, -339, 0, -339, 0, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 0, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 0, -339, 0, -339, 0, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 0, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, -339, 0, 0, -339, 0, 0, 0, 0, 0, 0, 0, 0, 0, -339, 0, 0, 0, 0, -339, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -486, -486, 0, 0, 0, 0, 0, -486, 0, 0, 0, 0, 0, 0, 0, -486, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -486, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -486, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -496, -496, 0, 0, 0, 0, 0, -496, 0, 0, 0, 0, 0, 0, 0, -496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -496, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -488, -488, 0, 0, 0, 0, 0, -488, 0, 0, 0, 0, 0, 0, 0, -488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -488, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -498, -498, 0, 0, 0, 0, 0, -498, 0, 0, 0, 0, 0, 0, 0, -498, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -498, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -498, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -502, -502, 0, 0, 0, 0, 0, -502, 0, 0, 0, 0, 0, 0, 0, -502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -502, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -504, -504, 0, 0, 0, 0, 0, -504, 0, 0, 0, 0, 0, 0, 0, -504, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -504, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -504, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -494, -494, 0, 0, 0, 0, 0, -494, 0, 0, 0, 0, 0, 0, 0, -494, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -494, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -494, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -490, -490, 0, 0, 0, 0, 0, -490, 0, 0, 0, 0, 0, 0, 0, -490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -490, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -500, -500, 0, 0, 0, 0, 0, -500, 0, 0, 0, 0, 0, 0, 0, -500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -500, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -492, -492, 0, 0, 0, 0, 0, -492, 0, 0, 0, 0, 0, 0, 0, -492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -492, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -506, -506, 0, 0, 0, 0, 0, -506, 0, 0, 0, 0, 0, 0, 0, -506, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -506, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -506, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -534, -534, 0, 0, 0, 0, 0, -534, 0, 0, 0, 0, 0, 0, 0, -534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -534, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -537, -537, 0, 0, 0, 0, 0, -537, 0, 0, 0, 0, 0, 0, 0, -537, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -537, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -537, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -407, -407, 0, 0, 0, 0, 0, -407, 0, 0, 0, 0, 0, 0, 0, -407, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -407, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -407, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -408, -408, 0, 0, 0, 0, 0, -408, 0, 0, 0, 0, 0, 0, 0, -408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -408, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -409, -409, 0, 0, 0, 0, 0, -409, 0, 0, 0, 0, 0, 0, 0, -409, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -409, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -409, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -348, -348, -348, 0, -348, -348, -348, -348, 0, -348, -348, 0, -348, 0, 0, 0, 0, 0, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 0, -348, -348, -348, -348, 0, 0, 0, -348, -348, 0, -348, 0, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 0, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 0, -348, 0, -348, 0, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 0, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, -348, 0, 0, -348, 0, 0, 0, 0, 0, 0, 0, 0, 0, -348, 0, 0, 0, 0, -348, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -395, -395, 0, 0, 0, 0, 0, -395, 0, 0, 0, 0, 0, 0, 0, -395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -395, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -396, -396, 0, 0, 0, 0, 0, -396, 0, 0, 0, 0, 0, 0, 0, -396, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -396, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -396, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -397, -397, 0, 0, 0, 0, 0, -397, 0, 0, 0, 0, 0, 0, 0, -397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -397, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -389, -389, 0, 0, 0, 0, 0, -389, 0, 0, 0, 0, 0, 0, 0, -389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -389, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -343, -343, -343, 0, -343, -343, -343, -343, 0, -343, -343, 0, -343, 0, 0, 0, 0, 0, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, 0, -343, -343, -343, -343, 0, 0, 0, -343, -343, 0, -343, 0, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, 0, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, 0, -343, 0, -343, 0, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, 0, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, -343, 0, 0, -343, 0, 0, 0, 0, 0, 0, 0, 0, 0, -343, 0, 0, 0, 0, -343, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -346, -346, -346, 0, -346, -346, -346, -346, 0, -346, -346, 0, -346, 0, 0, 0, 0, 0, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, 0, -346, -346, -346, -346, 0, 0, 0, -346, -346, 0, -346, 0, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, 0, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, 0, -346, 0, -346, 0, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, 0, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, -346, 0, 0, -346, 0, 0, 0, 0, 0, 0, 0, 0, 0, -346, 0, 0, 0, 0, -346, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -369, -369, 0, 0, 0, 0, 0, -369, 0, 0, 0, 0, 0, 0, 0, -369, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -369, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -369, 0, 0, 0, 0, 0, 0,
-136, 0, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, 0, 0, 0, 0, 0, -136, 0, 0, 0, -136, -136, 0, 0, -136, -136, 0, 0, 0, 0, 0, -136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, 0, -136, -136, 0, -136, 0, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, 0, 0, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, 0, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, -136, 0, -136, -136, -136, 0, 0, 0, -136, -136, -136, -136, -136, -136, -136, 0, 0, 0, -136, -136,
0, 0, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -156, -156, -156, 0, -156, -156, -156, -156, 0, -156, -156, 0, -156, 0, 0, 0, 0, 0, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, 0, -156, -156, -156, -156, 0, 0, 0, -156, -156, 0, -156, 0, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, 0, -156, 0, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, 0, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, -156, 0, 0, -156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -156, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -319, 0, 0, 0, 0, 0, 0, 0, -319, 0, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 0, -180, -180, -180, -180, 0, -180, -180, 0, -180, 0, 0, 0, 0, 0, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 0, -180, -180, -180, -180, 0, 0, 0, -180, -180, 0, -180, 0, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 0, -180, 0, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 0, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, -180, 0, 0, -180, -180, -180, -180, -180, -180, 0, 0, 0, 0, 0, 0, 0, 0, -180, -180, 0,
0, 0, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -171, -171, -171, 0, -171, -171, -171, -171, 0, -171, -171, 0, -171, 0, 0, 0, 0, 0, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, 0, -171, -171, -171, -171, 0, 0, 0, -171, -171, 0, -171, 0, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, 0, -171, 0, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, 0, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, -171, 0, 0, -171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -171, 0,
-133, 0, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, 0, 0, 0, 0, 0, -133, 0, 0, 0, -133, -133, 0, 0, -133, -133, 0, 0, 0, 0, 0, -133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, 0, -133, -133, 0, -133, 0, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, 0, 0, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, 0, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, -133, 0, -133, -133, -133, 0, 0, 0, -133, -133, -133, -133, -133, -133, -133, 0, 0, 0, -133, -133,
-134, 0, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, 0, 0, 0, 0, 0, -134, 0, 0, 0, -134, -134, 0, 0, -134, -134, 0, 0, 0, 0, 0, -134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, 0, -134, -134, 0, -134, 0, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, 0, 0, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, 0, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, -134, 0, -134, -134, -134, 0, 0, 0, -134, -134, -134, -134, -134, -134, -134, 0, 0, 0, -134, -134,
-135, 0, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, 0, 0, 0, 0, 0, -135, 0, 0, 0, -135, -135, 0, 0, -135, -135, 0, 0, 0, 0, 0, -135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, 0, -135, -135, 0, -135, 0, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, 0, 0, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, 0, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, -135, 0, -135, -135, -135, 0, 0, 0, -135, -135, -135, -135, -135, -135, -135, 0, 0, 0, -135, -135,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, 0, 0, 0, -186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -164, 0, 0, 0, 0, 0, 0, 0, -164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -164, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -376, -376, -376, 0, -376, -376, -376, -376, 0, -376, -376, 0, -376, 0, 0, 0, 0, 0, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 0, -376, -376, -376, -376, 0, 0, 0, -376, -376, 0, -376, 0, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 0, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 0, -376, 0, -376, 0, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 0, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 0, 0, -376, 0, 0, 0, 0, 0, 0, 0, 0, 0, -376, 0, 0, 0, 0, -376, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -382, -382, 0, 0, 0, 0, 0, -382, 0, 0, 0, 0, 0, 0, 0, -382, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -382, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -65, -65, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -64, -64, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 449, 0, 0,
0, 0, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -256, -256, -256, 0, -256, -256, -256, -256, 0, -256, -256, 0, -256, 0, 0, 0, 0, 0, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 0, -256, -256, -256, -256, 0, 0, 0, -256, -256, 0, -256, 0, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 0, -256, 0, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 0, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, -256, 0, 0, -256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -256, 0,
0, 0, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -257, -257, -257, 0, -257, -257, -257, -257, 0, -257, -257, 0, -257, 0, 0, 0, 0, 0, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 0, -257, -257, -257, -257, 0, 0, 0, -257, -257, 0, -257, 0, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 0, -257, 0, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 0, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, -257, 0, 0, -257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -257, 0,
0, 0, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -241, -241, -241, 0, -241, -241, -241, -241, 0, -241, -241, 0, -241, 0, 0, 0, 0, 0, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 0, -241, -241, -241, -241, 0, 0, 0, -241, -241, 0, -241, 0, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 0, -241, 0, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 0, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, -241, 0, 0, -241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -241, 0,
0, 0, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -255, -255, -255, 0, -255, -255, -255, -255, 0, -255, -255, 0, -255, 0, 0, 0, 0, 0, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 0, -255, -255, -255, -255, 0, 0, 0, -255, -255, 0, -255, 0, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 0, -255, 0, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 0, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, -255, 0, 0, -255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -255, 0,
0, 0, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -243, -243, -243, 0, -243, -243, -243, -243, 0, -243, -243, 0, -243, 0, 0, 0, 0, 0, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 0, -243, -243, -243, -243, 0, 0, 0, -243, -243, 0, -243, 0, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 0, -243, 0, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 0, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 0, 0, -243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -243, 0,
0, 0, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -258, -258, -258, 0, -258, -258, -258, -258, 0, -258, -258, 0, -258, 0, 0, 0, 0, 0, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 0, -258, -258, -258, -258, 0, 0, 0, -258, -258, 0, -258, 0, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 0, -258, 0, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 0, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, -258, 0, 0, -258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -258, 0,
0, 0, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -245, -245, -245, 0, -245, -245, -245, -245, 0, -245, -245, 0, -245, 0, 0, 0, 0, 0, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 0, -245, -245, -245, -245, 0, 0, 0, -245, -245, 0, -245, 0, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 0, -245, 0, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 0, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, -245, 0, 0, -245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -245, 0,
0, 0, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -259, -259, -259, 0, -259, -259, -259, -259, 0, -259, -259, 0, -259, 0, 0, 0, 0, 0, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 0, -259, -259, -259, -259, 0, 0, 0, -259, -259, 0, -259, 0, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 0, -259, 0, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 0, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, -259, 0, 0, -259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -259, 0,
0, 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -254, -254, -254, 0, -254, -254, -254, -254, 0, -254, -254, 0, -254, 0, 0, 0, 0, 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 0, -254, -254, -254, -254, 0, 0, 0, -254, -254, 0, -254, 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 0, -254, 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, 0, 0, -254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -254, 0,
0, 0, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, -261, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -261, -261, -261, 0, -261, -261, -261, -261, 0, -261, -261, 0, -261, 0, 0, 0, 0, 0, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 0, -261, -261, -261, -261, 0, 0, 0, -261, -261, 0, -261, 0, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 0, -261, 0, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 0, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, -261, 0, 0, -261, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -261, 0,
0, 0, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -246, -246, -246, 0, -246, -246, -246, -246, 0, -246, -246, 0, -246, 0, 0, 0, 0, 0, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 0, -246, -246, -246, -246, 0, 0, 0, -246, -246, 0, -246, 0, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 0, -246, 0, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 0, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, -246, 0, 0, -246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -246, 0,
0, 0, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -267, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -267, -267, -267, 0, -267, -267, -267, -267, 0, -267, -267, 0, -267, 0, 0, 0, 0, 0, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, -267, -267, -267, -267, 0, 0, 0, -267, -267, 0, -267, 0, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, -267, 0, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, 0, -267, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -267, 0,
0, 0, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -268, -268, -268, 0, -268, -268, -268, -268, 0, -268, -268, 0, -268, 0, 0, 0, 0, 0, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 0, -268, -268, -268, -268, 0, 0, 0, -268, -268, 0, -268, 0, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 0, -268, 0, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 0, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, -268, 0, 0, -268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -268, 0,
0, 0, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -247, -247, -247, 0, -247, -247, -247, -247, 0, -247, -247, 0, -247, 0, 0, 0, 0, 0, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 0, -247, -247, -247, -247, 0, 0, 0, -247, -247, 0, -247, 0, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 0, -247, 0, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 0, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, -247, 0, 0, -247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -247, 0,
0, 0, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -269, -269, -269, 0, -269, -269, -269, -269, 0, -269, -269, 0, -269, 0, 0, 0, 0, 0, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 0, -269, -269, -269, -269, 0, 0, 0, -269, -269, 0, -269, 0, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 0, -269, 0, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 0, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 0, 0, -269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -269, 0,
0, 0, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -248, -248, -248, 0, -248, -248, -248, -248, 0, -248, -248, 0, -248, 0, 0, 0, 0, 0, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 0, -248, -248, -248, -248, 0, 0, 0, -248, -248, 0, -248, 0, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 0, -248, 0, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 0, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, -248, 0, 0, -248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -248, 0,
0, 0, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -249, -249, -249, 0, -249, -249, -249, -249, 0, -249, -249, 0, -249, 0, 0, 0, 0, 0, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 0, -249, -249, -249, -249, 0, 0, 0, -249, -249, 0, -249, 0, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 0, -249, 0, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 0, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, -249, 0, 0, -249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -249, 0,
0, 0, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -271, -271, -271, 0, -271, -271, -271, -271, 0, -271, -271, 0, -271, 0, 0, 0, 0, 0, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 0, -271, -271, -271, -271, 0, 0, 0, -271, -271, 0, -271, 0, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 0, -271, 0, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 0, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, 0, 0, -271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -271, 0,
0, 0, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -270, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -270, -270, -270, 0, -270, -270, -270, -270, 0, -270, -270, 0, -270, 0, 0, 0, 0, 0, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 0, -270, -270, -270, -270, 0, 0, 0, -270, -270, 0, -270, 0, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 0, -270, 0, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 0, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, -270, 0, 0, -270, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -270, 0,
0, 0, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -250, -250, -250, 0, -250, -250, -250, -250, 0, -250, -250, 0, -250, 0, 0, 0, 0, 0, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 0, -250, -250, -250, -250, 0, 0, 0, -250, -250, 0, -250, 0, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 0, -250, 0, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 0, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, -250, 0, 0, -250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -250, 0,
0, 0, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -273, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -273, -273, -273, 0, -273, -273, -273, -273, 0, -273, -273, 0, -273, 0, 0, 0, 0, 0, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 0, -273, -273, -273, -273, 0, 0, 0, -273, -273, 0, -273, 0, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 0, -273, 0, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 0, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, -273, 0, 0, -273, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450, 0, 0, 0, -273, 0,
0, 0, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -251, -251, -251, 0, -251, -251, -251, -251, 0, -251, -251, 0, -251, 0, 0, 0, 0, 0, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 0, -251, -251, -251, -251, 0, 0, 0, -251, -251, 0, -251, 0, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 0, -251, 0, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 0, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, -251, 0, 0, -251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -251, 0,
0, 0, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -274, -274, -274, 0, -274, -274, -274, -274, 0, -274, -274, 0, -274, 0, 0, 0, 0, 0, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 0, -274, -274, -274, -274, 0, 0, 0, -274, -274, 0, -274, 0, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 0, -274, 0, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 0, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, -274, 0, 0, -274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -274, 0,
0, 0, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -275, -275, -275, 0, -275, -275, -275, -275, 0, -275, -275, 0, -275, 0, 0, 0, 0, 0, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 0, -275, -275, -275, -275, 0, 0, 0, -275, -275, 0, -275, 0, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 0, -275, 0, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 0, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, 0, 0, -275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -275, 0,
0, 0, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -252, -252, -252, 0, -252, -252, -252, -252, 0, -252, -252, 0, -252, 0, 0, 0, 0, 0, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 0, -252, -252, -252, -252, 0, 0, 0, -252, -252, 0, -252, 0, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 0, -252, 0, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 0, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, -252, 0, 0, -252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -252, 0,
0, 0, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -253, -253, -253, 0, -253, -253, -253, -253, 0, -253, -253, 0, -253, 0, 0, 0, 0, 0, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 0, -253, -253, -253, -253, 0, 0, 0, -253, -253, 0, -253, 0, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 0, -253, 0, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 0, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, 0, 0, -253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -253, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -300, -300, 0, 0, -300, 0, 0, 63, 0, 0, -300, 64, 0, 0, 0, 0, 0, -300, -300, -300, -300, 0, -300, 0, -300, -300, -300, -300, 0, -300, 0, -300, -300, 0, -300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -300, 0, -300, -300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, -141, 0, 0, -141, 0, 0, 0, 0, 0, -141, 0, 0, 0, 0, 0, 0, -141, -141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -141, 0, -141, -141, 0, -141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -141, 0, -141, -141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -143, 0, 0, 0, 0, 0, -143, 0, 0, 0, 0, 0, 0, -143, -143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -305, 0, 0, 0, -305, -305, 0, 0, -305, -305, 0, 0, 0, 0, 0, -305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, 0, -305, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, 0, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, -305, 0, 0, 0, -305, -305, -305, -305, -305, -305, -305, 0, 0, 0, -305, -305,
-93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -93, 0, 0, 0, -93, -93, 0, 0, -93, -93, 0, 0, 0, 0, 0, -93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 0, -93, -93, 0, -93, 0, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 0, 0, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 0, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, -93, 0, -93, -93, -93, 0, 0, 0, -93, -93, -93, -93, -93, -93, -93, 0, 0, 0, -93, -93,
-323, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -323, 0, 0, 0, -323, -323, 0, 0, -323, -323, 0, 0, 0, 0, 0, -323, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, 0, -323, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, 0, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, -323, 0, 0, 0, -323, -323, -323, -323, -323, -323, -323, 0, 0, 0, -323, -323,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, -73, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -308, 0, 0, 0, -308, -308, 0, 0, -308, -308, 0, 0, 0, 0, 0, -308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, 0, -308, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, 0, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, -308, 0, 0, 0, -308, -308, -308, -308, -308, -308, -308, 0, 0, 0, -308, -308,
0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -59, -59, 0, 0, -59, 0, 0, 0, 0, 0, -59, 0, 0, 0, 0, 0, 0, -59, -59, 0, 0, 0, 0, 0, 67, 0, 0, 0, 0, -59, 0, -59, -59, 0, -59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -59, 0, -59, -59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -183, 0, 0, -183, 0, 0, 0, 0, 0, -183, 0, 0, 0, 0, 0, 0, -183, -183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -183, 0, -183, 68, 0, -183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -183, 0, -183, -183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -309, 0, 0, 0, -309, -309, 0, 0, -309, -309, 0, 0, 0, 0, 0, -309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, 0, -309, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, 0, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, -309, 0, 0, 0, -309, -309, -309, -309, -309, -309, -309, 0, 0, 0, -309, -309,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, -230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -230, -230, -230, -230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, -284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -284, -284, -284, -284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -218, 0, 0, -218, 0, 0, 0, 0, 0, -218, 0, 0, 0, 0, 0, 0, -218, -218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -218, 0, -218, 0, 0, -218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, -218, -218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -304, 0, 0, 0, -304, -304, 0, 0, -304, -304, 0, 0, 0, 0, 0, -304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 0, -304, -304, 0, -304, 0, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 0, 0, 0, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 0, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, -304, 0, -304, -304, -304, 0, 0, 0, -304, -304, -304, -304, -304, -304, -304, 0, 0, 0, -304, -304,
-303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -303, 0, 0, 0, -303, -303, 0, 0, -303, -303, 0, 0, 0, 0, 0, -303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, 0, -303, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, 0, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, -303, 0, 0, 0, -303, -303, -303, -303, -303, -303, -303, 0, 0, 0, -303, -303,
-205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -205, 0, 0, 0, -205, -205, 0, 0, -205, -205, 0, 0, 0, 0, 0, -205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, 0, -205, -205, 0, -205, 0, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, 0, 0, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, 0, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, -205, 0, -205, -205, -205, 0, 0, 0, -205, -205, -205, -205, -205, -205, -205, 0, 0, 0, -205, -205,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, -222, 0, 0, 0, 0, 0, -222, 0, 0, 0, 0, 0, 0, -222, -222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -222, 0, -222, 0, 0, -222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -222, -222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -131, 0, 0, 0, 0, 0, -131, 0, 0, 0, 0, 0, 0, -131, -131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 0, -131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, -131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -220, 0, 0, 0, 0, 0, -220, 0, 0, 0, 0, 0, 0, -220, -220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -220, 0, -220, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -220, -220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, -56, -56, 0, 0, -56, 77, 0, -56, 0, 0, -56, -56, 0, 0, 0, 78, 0, -56, -56, -56, -56, 0, -56, 0, -56, -56, -56, -56, 0, -56, 0, -56, -56, 0, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -56, 0, -56, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -538, -538, -538, -538, -538, -168, -538, -538, -538, -538, 475, -538, -538, -538, 476, -538, 79, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, -538, 80, -538, -538, -538, -538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -538, -538, -538, -538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, -228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -228, -228, -228, -228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -138, -138, 0, 0, -138, 0, 0, 0, 0, 0, -138, 0, 0, 0, 0, 0, 0, -138, -138, 81, 0, 0, 82, 0, -138, 83, 84, 0, 0, -138, 0, -138, -138, 0, -138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -138, 0, -138, -138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-307, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -307, 0, 0, 0, -307, -307, 0, 0, -307, -307, 0, 0, 0, 0, 0, -307, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 0, -307, -307, 0, -307, 0, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 0, 0, 0, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 0, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, -307, 0, -307, -307, -307, 0, 0, 0, -307, -307, -307, -307, -307, -307, -307, 0, 0, 0, -307, -307,
-297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -297, 0, 0, 0, -297, -297, 0, 0, -297, -297, 0, 0, 0, 0, 0, -297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 0, -297, -297, 0, -297, 0, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 0, 0, 0, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 0, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, -297, 0, -297, -297, -297, 0, 0, 0, -297, -297, -297, -297, -297, -297, -297, 0, 0, 0, -297, -297,
0, -291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -291, -291, 0, 0, -291, 0, 0, 0, 0, 0, -291, 0, 0, 0, 0, 0, 0, -291, -291, -291, 85, 0, -291, 0, -291, -291, -291, 86, 0, -291, 0, -291, -291, 0, -291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -291, 0, -291, -291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-324, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -324, 0, 0, 0, -324, -324, 0, 0, -324, -324, 0, 0, 0, 0, 0, -324, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 0, -324, -324, 0, -324, 0, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 0, 0, 0, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 0, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, -324, 0, -324, -324, -324, 0, 0, 0, -324, -324, -324, -324, -324, -324, -324, 0, 0, 0, -324, -324,
-327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -327, 0, 0, 0, -327, -327, 0, 0, -327, -327, 0, 0, 0, 0, 0, -327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, 0, -327, -327, 0, -327, 0, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, 0, 0, 0, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, 0, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, -327, 0, -327, -327, -327, 0, 0, 0, -327, -327, -327, -327, -327, -327, -327, 0, 0, 0, -327, -327,
-306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -306, 0, 0, 0, -306, -306, 0, 0, -306, -306, 0, 0, 0, 0, 0, -306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, 0, -306, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, 0, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, -306, 0, 0, 0, -306, -306, -306, -306, -306, -306, -306, 0, 0, 0, -306, -306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -167, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -165, 0, 0, 0, 0, 0, 0,
-540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -540, 0, 0, 0, -540, -540, 0, 0, -540, -540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -540, 0, -540, 0, 0, -540, -540, -540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, -540, -540, -540, -540, 0, 0, 0, 0, -540, 0, 0, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, 0, -540, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, 0, -540, -540, -540, 0, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, -540, 0, -540, -540, -540, -540, -540, 0, 0, 0, 0, 0, 0, 0, 0, 0, -540, -540, -540, -540, -540, -540, 0, 0, 0, -540, -540,
-543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -543, 0, 0, 0, -543, -543, 0, 0, -543, -543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -543, 0, -543, 0, 0, -543, -543, -543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, -543, -543, -543, -543, 0, 0, 0, 0, -543, 0, 0, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, 0, -543, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, 0, -543, -543, -543, 0, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, -543, 0, -543, -543, -543, -543, -543, 0, 0, 0, 0, 0, 0, 0, 0, 0, -543, -543, -543, -543, -543, -543, 0, 0, 0, -543, -543,
-541, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -541, 0, 0, 0, -541, -541, 0, 0, -541, -541, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -541, 0, -541, 0, 0, -541, -541, -541, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, -541, -541, -541, -541, 0, 0, 0, 0, -541, 0, 0, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, 0, -541, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, 0, -541, -541, -541, 0, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, -541, 0, -541, -541, -541, -541, -541, 0, 0, 0, 0, 0, 0, 0, 0, 0, -541, -541, -541, -541, -541, -541, 0, 0, 0, -541, -541,
-545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -545, 0, 0, 0, -545, -545, 0, 0, -545, -545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -545, 0, -545, 0, 0, -545, -545, -545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, -545, -545, -545, -545, 0, 0, 0, 0, -545, 0, 0, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, 0, -545, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, 0, -545, -545, -545, 0, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, -545, 0, -545, -545, -545, -545, -545, 0, 0, 0, 0, 0, 0, 0, 0, 0, -545, -545, -545, -545, -545, -545, 0, 0, 0, -545, -545,
-542, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -542, 0, 0, 0, -542, -542, 0, 0, -542, -542, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -542, 0, -542, 0, 0, -542, -542, -542, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, -542, -542, -542, -542, 0, 0, 0, 0, -542, 0, 0, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, 0, -542, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, 0, -542, -542, -542, 0, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, -542, 0, -542, -542, -542, -542, -542, 0, 0, 0, 0, 0, 0, 0, 0, 0, -542, -542, -542, -542, -542, -542, 0, 0, 0, -542, -542,
-546, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -546, 0, 0, 0, -546, -546, 0, 0, -546, -546, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -546, 0, -546, 0, 0, -546, -546, -546, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, -546, -546, -546, -546, 0, 0, 0, 0, -546, 0, 0, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, 0, -546, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, 0, -546, -546, -546, 0, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, -546, 0, -546, -546, -546, -546, -546, 0, 0, 0, 0, 0, 0, 0, 0, 0, -546, -546, -546, -546, -546, -546, 0, 0, 0, -546, -546,
-148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -148, 0, 0, 0, -148, -148, 0, 0, -148, -148, 0, 0, 0, 0, 0, -148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, 0, -148, -148, 0, -148, 0, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, 0, 0, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, 0, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, -148, 0, -148, -148, -148, 0, 0, 0, -148, -148, -148, -148, -148, -148, -148, 0, 0, 0, -148, -148,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 495, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-124, 0, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 0, 0, 0, 0, 0, -124, 0, 0, 0, -124, -124, 0, 0, -124, -124, 0, 0, 0, 0, 0, -124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 0, -124, -124, 0, -124, 0, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 0, 0, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 0, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, 0, -124, -124, -124, 0, 0, 0, -124, -124, -124, -124, -124, -124, -124, 0, 0, 0, -124, -124,
-544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -544, 0, 0, 0, -544, -544, 0, 0, -544, -544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -544, 0, -544, 0, 0, -544, -544, -544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, -544, -544, -544, -544, 0, 0, 0, 0, -544, 0, 0, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, 0, -544, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, 0, -544, -544, -544, 0, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, -544, 0, -544, -544, -544, -544, -544, 0, 0, 0, 0, 0, 0, 0, 0, 0, -544, -544, -544, -544, -544, -544, 0, 0, 0, -544, -544,
0, -289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, -289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -289, -289, -289, -289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, -285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -285, -285, -285, -285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, -286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -286, -286, -286, -286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, -288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -288, -288, -288, -288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, -287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -287, -287, -287, -287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -322, 0, 0, 0, 0, 0, 0, 0, -322, 0, 0, 0, 0, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -66, -66, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 502, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -224, 0, -224, -224, 0, 0, -224, -224, 0, -224, 0, 0, -224, -224, 0, 0, 0, -224, 0, -224, -224, -224, -224, 0, -224, 0, -224, -224, -224, -224, 0, -224, 0, -224, -224, 0, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -224, 0, -224, -224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -67, -67, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, 0,
0, 0, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -235, -235, -235, 0, -235, -235, -235, -235, 0, -235, -235, 0, -235, 0, 0, 0, 0, 0, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 0, -235, -235, -235, -235, 0, 0, 0, -235, -235, 0, -235, 0, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 0, -235, 0, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 0, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, -235, 0, 0, -235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -235, 0,
0, 0, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -272, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -272, -272, -272, 0, -272, -272, -272, -272, 0, -272, -272, 0, -272, 0, 0, 0, 0, 0, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 0, -272, -272, -272, -272, 0, 0, 0, -272, -272, 0, -272, 0, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 0, -272, 0, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 0, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, -272, 0, 0, -272, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -272, 0,
0, 0, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -276, -276, -276, 0, -276, -276, -276, -276, 0, -276, -276, 0, -276, 0, 0, 0, 0, 0, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 0, -276, -276, -276, -276, 0, 0, 0, -276, -276, 0, -276, 0, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 0, -276, 0, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 0, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, -276, 0, 0, -276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -276, 0,
0, 0, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -278, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -278, -278, -278, 0, -278, -278, -278, -278, 0, -278, -278, 0, -278, 0, 0, 0, 0, 0, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, 0, -278, -278, -278, -278, 0, 0, 0, -278, -278, 0, -278, 0, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, 0, -278, 0, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, 0, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, -278, 0, 0, -278, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -278, 0,
0, 0, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -282, -282, -282, 0, -282, -282, -282, -282, 0, -282, -282, 0, -282, 0, 0, 0, 0, 0, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 0, -282, -282, -282, -282, 0, 0, 0, -282, -282, 0, -282, 0, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 0, -282, 0, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 0, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, -282, 0, 0, -282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -282, 0,
0, 0, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -281, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -281, -281, -281, 0, -281, -281, -281, -281, 0, -281, -281, 0, -281, 0, 0, 0, 0, 0, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 0, -281, -281, -281, -281, 0, 0, 0, -281, -281, 0, -281, 0, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 0, -281, 0, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 0, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, -281, 0, 0, -281, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -281, 0,
0, 0, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -283, -283, -283, 0, -283, -283, -283, -283, 0, -283, -283, 0, -283, 0, 0, 0, 0, 0, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 0, -283, -283, -283, -283, 0, 0, 0, -283, -283, 0, -283, 0, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 0, -283, 0, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 0, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, 0, 0, -283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -283, 0,
-137, 0, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, 0, 0, 0, 0, 0, -137, 0, 0, 0, -137, -137, 0, 0, -137, -137, 0, 0, 0, 0, 0, -137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, 0, -137, -137, 0, -137, 0, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, 0, 0, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, 0, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, -137, 0, -137, -137, -137, 0, 0, 0, -137, -137, -137, -137, -137, -137, -137, 0, 0, 0, -137, -137,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 511, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -217, 0, 0, 0, 0, 0, -217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -212, 0, 0, 0, 0, 0, -212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -215, 0, 0, 0, 0, 0, -215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -236, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -355, -355, -355, 0, -355, -355, -355, -355, 0, -355, -355, 0, -355, 0, 0, 0, 0, 0, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 0, -355, -355, -355, -355, 0, 0, 0, -355, -355, 0, -355, 0, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 0, -355, 0, -355, 0, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 0, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, -355, 0, 0, -355, 0, 0, 0, 0, -355, 0, 0, 0, 0, 0, 0, 0, 0, 0, -355, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, -366, -366, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, -366, -366, -366, 0, -366, 0, -366, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, -366, 0, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -366, 0, 0, 0, 0, 0, -366, 0, 0, -366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -359, -359, 0, 0, 0, 0, 0, -359, 0, 0, 0, 0, 0, 0, 0, -359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -359, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -119, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 519, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -190, 0, 0, 0, 0, 0, -190, 0, 0, 0, 0, 0, 0, 0, -190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -318, 0, 0, 0, 0, 0, 0, 0, -318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -187, 0, 0, 0, 0, 0, -187, 0, 0, 0, 0, 0, 0, 0, -187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -107, 0, 0, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -175, 0, 0, 0, 0, 0, -175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -147, 0, 0, 0, -147, -147, 0, 0, -147, -147, 0, 0, 0, 0, 0, -147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, 0, -147, -147, 0, -147, 0, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, 0, 0, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, 0, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, -147, 0, -147, -147, -147, 0, 0, 0, -147, -147, -147, -147, -147, -147, -147, 0, 0, 0, -147, -147,
0, -232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, -232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -232, -232, -232, -232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, -233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -233, -233, -233, -233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -328, 0, 0, 0, -328, -328, 0, 0, -328, -328, 0, 0, 0, 0, 0, -328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, 0, -328, -328, 0, -328, 0, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, 0, 0, 0, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, 0, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, -328, 0, -328, -328, -328, 0, 0, 0, -328, -328, -328, -328, -328, -328, -328, 0, 0, 0, -328, -328,
-125, 0, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 0, 0, 0, 0, 0, -125, 0, 0, 0, -125, -125, 0, 0, -125, -125, 0, 0, 0, 0, 0, -125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 0, -125, -125, 0, -125, 0, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 0, 0, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 0, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, -125, 0, -125, -125, -125, 0, 0, 0, -125, -125, -125, -125, -125, -125, -125, 0, 0, 0, -125, -125,
-77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, 0, 0, 0, -77, -77, 0, 0, -77, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, 0, -77, 0, 0, -77, -77, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, -77, -77, -77, -77, 0, 0, 0, 0, -77, 0, 0, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, 0, -77, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, 0, -77, -77, -77, 0, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 0, -77, -77, -77, -77, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, -77, -77, -77, -77, -77, -77, 0, 0, 0, -77, -77,
-81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, -81, -81, 0, 0, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, 0, -81, 0, 0, -81, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, -81, -81, -81, -81, 0, 0, 0, 0, -81, 0, 0, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, 0, -81, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, 0, -81, -81, -81, 0, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 0, -81, -81, -81, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, -81, -81, -81, -81, -81, 0, 0, 0, -81, -81,
-86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, 0, 0, 0, -86, -86, 0, 0, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, 0, -86, 0, 0, -86, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, -86, -86, -86, -86, 0, 0, 0, 0, -86, 0, 0, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, 0, -86, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, 0, -86, -86, -86, 0, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 0, -86, -86, -86, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, -86, -86, -86, -86, -86, 0, 0, 0, -86, -86,
-79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, 0, 0, 0, -79, -79, 0, 0, -79, -79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, 0, -79, 0, 0, -79, -79, -79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, -79, -79, -79, -79, 0, 0, 0, 0, -79, 0, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, 0, -79, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, 0, -79, -79, -79, 0, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 0, -79, -79, -79, -79, -79, 0, 0, 0, 0, 0, 0, 0, 0, 0, -79, -79, -79, -79, -79, -79, 0, 0, 0, -79, -79,
-82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, -82, -82, 0, 0, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, 0, -82, 0, 0, -82, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, -82, -82, -82, -82, 0, 0, 0, 0, -82, 0, 0, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, 0, -82, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, 0, -82, -82, -82, 0, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 0, -82, -82, -82, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, -82, -82, -82, -82, -82, 0, 0, 0, -82, -82,
-83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, -83, -83, 0, 0, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, -83, 0, 0, -83, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, -83, -83, -83, -83, 0, 0, 0, 0, -83, 0, 0, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, 0, -83, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, 0, -83, -83, -83, 0, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 0, -83, -83, -83, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -83, -83, -83, -83, -83, 0, 0, 0, -83, -83,
-80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, -80, -80, 0, 0, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, 0, -80, 0, 0, -80, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, -80, -80, -80, -80, 0, 0, 0, 0, -80, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, 0, -80, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, 0, -80, -80, -80, 0, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 0, -80, -80, -80, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, -80, -80, -80, -80, -80, 0, 0, 0, -80, -80,
-84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, -84, -84, 0, 0, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, -84, 0, 0, -84, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, -84, -84, -84, -84, 0, 0, 0, 0, -84, 0, 0, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, 0, -84, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, 0, -84, -84, -84, 0, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 0, -84, -84, -84, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, -84, -84, -84, -84, -84, 0, 0, 0, -84, -84,
-78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, 0, 0, 0, -78, -78, 0, 0, -78, -78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, 0, -78, 0, 0, -78, -78, -78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, -78, -78, -78, -78, 0, 0, 0, 0, -78, 0, 0, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, 0, -78, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, 0, -78, -78, -78, 0, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 0, -78, -78, -78, -78, -78, 0, 0, 0, 0, 0, 0, 0, 0, 0, -78, -78, -78, -78, -78, -78, 0, 0, 0, -78, -78,
-85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, -85, -85, 0, 0, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, -85, 0, 0, -85, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, -85, -85, -85, -85, 0, 0, 0, 0, -85, 0, 0, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, 0, -85, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, 0, -85, -85, -85, 0, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 0, -85, -85, -85, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, -85, -85, -85, -85, -85, 0, 0, 0, -85, -85,
-87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, 0, 0, 0, -87, -87, 0, 0, -87, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, 0, -87, 0, 0, -87, -87, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, -87, -87, -87, -87, 0, 0, 0, 0, -87, 0, 0, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, 0, -87, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, 0, -87, -87, -87, 0, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, -87, 0, -87, -87, -87, -87, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, -87, -87, -87, -87, -87, 0, 0, 0, -87, -87,
-88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, 0, 0, 0, -88, -88, 0, 0, -88, -88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, 0, -88, 0, 0, -88, -88, -88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, -88, -88, -88, -88, 0, 0, 0, 0, -88, 0, 0, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, 0, -88, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, 0, -88, -88, -88, 0, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, -88, 0, -88, -88, -88, -88, -88, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, -88, -88, -88, -88, -88, 0, 0, 0, -88, -88,
0, -539, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -539, -539, -539, -539, -539, 0, -539, -539, -539, -539, 0, -539, -539, -539, 0, -539, 0, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, -539, 0, -539, -539, -539, -539, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -539, -539, -539, -539, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -207, 0, 0, 0, -207, -207, 0, 0, -207, -207, 0, 0, 0, 0, 0, -207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, 0, -207, -207, 0, -207, 0, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, 0, 0, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, 0, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, -207, 0, -207, -207, -207, 0, 0, 0, -207, -207, -207, -207, -207, -207, -207, 0, 0, 0, -207, -207,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 557, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -206, 0, 0, 0, -206, -206, 0, 0, -206, -206, 0, 0, 0, 0, 0, -206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, 0, -206, -206, 0, -206, 0, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, 0, 0, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, 0, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, 0, -206, -206, -206, 0, 0, 0, -206, -206, -206, -206, -206, -206, -206, 0, 0, 0, -206, -206,
-95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -95, 0, 0, 0, -95, -95, 0, 0, -95, -95, 0, 0, 0, 0, 0, -95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 0, -95, -95, 0, -95, 0, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 0, 0, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 0, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, -95, 0, -95, -95, -95, 0, 0, 0, -95, -95, -95, -95, -95, -95, -95, 0, 0, 0, -95, -95,
-208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -208, 0, 0, 0, -208, -208, 0, 0, -208, -208, 0, 0, 0, 0, 0, -208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 0, -208, -208, 0, -208, 0, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 0, 0, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 0, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, -208, 0, -208, -208, -208, 0, 0, 0, -208, -208, -208, -208, -208, -208, -208, 0, 0, 0, -208, -208,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 558, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 563, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -210, 0, 0, 0, -210, -210, 0, 0, -210, -210, 0, 0, 0, 0, 0, -210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, 0, -210, -210, 0, -210, 0, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, 0, 0, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, 0, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, -210, 0, -210, -210, -210, 0, 0, 0, -210, -210, -210, -210, -210, -210, -210, 0, 0, 0, -210, -210,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, 0, 0, 0, 0, 0, 0, 0, -33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -68, -68, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -111, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 570, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -260, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -260, -260, -260, 0, -260, -260, -260, -260, 0, -260, -260, 0, -260, 0, 0, 0, 0, 0, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 0, -260, -260, -260, -260, 0, 0, 0, -260, -260, 0, -260, 0, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 0, -260, 0, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 0, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, 0, 0, -260, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -260, 0,
0, 0, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -262, -262, -262, 0, -262, -262, -262, -262, 0, -262, -262, 0, -262, 0, 0, 0, 0, 0, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 0, -262, -262, -262, -262, 0, 0, 0, -262, -262, 0, -262, 0, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 0, -262, 0, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 0, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, -262, 0, 0, -262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -262, 0,
0, 0, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -266, -266, -266, 0, -266, -266, -266, -266, 0, -266, -266, 0, -266, 0, 0, 0, 0, 0, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 0, -266, -266, -266, -266, 0, 0, 0, -266, -266, 0, -266, 0, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 0, -266, 0, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 0, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, -266, 0, 0, -266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -266, 0,
0, 0, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -264, -264, -264, 0, -264, -264, -264, -264, 0, -264, -264, 0, -264, 0, 0, 0, 0, 0, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 0, -264, -264, -264, -264, 0, 0, 0, -264, -264, 0, -264, 0, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 0, -264, 0, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 0, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, -264, 0, 0, -264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -264, 0,
0, 0, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -263, -263, -263, 0, -263, -263, -263, -263, 0, -263, -263, 0, -263, 0, 0, 0, 0, 0, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 0, -263, -263, -263, -263, 0, 0, 0, -263, -263, 0, -263, 0, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 0, -263, 0, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 0, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, -263, 0, 0, -263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -263, 0,
0, 0, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -265, -265, -265, 0, -265, -265, -265, -265, 0, -265, -265, 0, -265, 0, 0, 0, 0, 0, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, -265, -265, -265, -265, 0, 0, 0, -265, -265, 0, -265, 0, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, -265, 0, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, 0, -265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -265, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -211, -211, -211, 0, -211, -211, -211, -211, 0, -211, -211, 0, -211, 0, 0, 0, 0, 0, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 0, -211, -211, -211, -211, 0, 0, 0, -211, -211, 0, -211, 0, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 0, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 0, -211, 0, -211, 0, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 0, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, -211, 0, 0, -211, 0, 0, 0, 0, 0, 0, 0, 0, 0, -211, 0, 0, 0, 0, -211, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -114, 0, 0, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -27, 0, 0, 0, 0, 0, -27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -357, -357, 0, 0, 0, 0, 0, -357, 0, 0, 0, 0, 0, 0, 0, -357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -357, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -356, -356, -356, 0, -356, -356, -356, -356, 0, -356, -356, 0, -356, 0, 0, 0, 0, 0, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, 0, -356, -356, -356, -356, 0, 0, 0, -356, -356, 0, -356, 0, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, 0, -356, 0, -356, 0, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, 0, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, -356, 0, 0, -356, 0, 0, 0, 0, -356, 0, 0, 0, 0, 0, 0, 0, 0, 0, -356, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -360, -360, 0, 0, 0, 0, 0, -360, 0, 0, 0, 0, 0, 0, 0, -360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -360, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -349, -349, -349, 0, -349, -349, -349, -349, 0, -349, -349, 0, -349, 0, 0, 0, 0, 0, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 0, -349, -349, -349, -349, 0, 0, 0, -349, -349, 0, -349, 0, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 0, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 0, -349, 0, -349, 0, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 0, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, -349, 0, 0, -349, 0, 0, 0, 0, 0, 0, 0, 0, 0, -349, 0, 0, 0, 0, -349, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -118, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, 0, 0, 0, 0, 0, -37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 582, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -174, 0, 0, 0, 0, 0, -174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -178, 0, 0, 0, 0, 0, -178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -17, 0, 0, 0, 0, 0, -17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, -57, -57, 0, 0, -57, 77, 0, -57, 0, 0, -57, -57, 0, 0, 0, 78, 0, -57, -57, -57, -57, 0, -57, 0, -57, -57, -57, -57, 0, -57, 0, -57, -57, 0, -57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -57, 0, -57, -57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, -58, -58, 0, 0, -58, 77, 0, -58, 0, 0, -58, -58, 0, 0, 0, 78, 0, -58, -58, -58, -58, 0, -58, 0, -58, -58, -58, -58, 0, -58, 0, -58, -58, 0, -58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -58, 0, -58, -58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -60, -60, 0, 0, -60, 0, 0, 0, 0, 0, -60, 0, 0, 0, 0, 0, 0, -60, -60, 0, 0, 0, 0, 0, 67, 0, 0, 0, 0, -60, 0, -60, -60, 0, -60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -60, 0, -60, -60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -140, -140, 0, 0, -140, 0, 0, 0, 0, 0, -140, 0, 0, 0, 0, 0, 0, -140, -140, 81, 0, 0, 82, 0, -140, 83, 84, 0, 0, -140, 0, -140, -140, 0, -140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -140, 0, -140, -140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -139, -139, 0, 0, -139, 0, 0, 0, 0, 0, -139, 0, 0, 0, 0, 0, 0, -139, -139, 81, 0, 0, 82, 0, -139, 83, 84, 0, 0, -139, 0, -139, -139, 0, -139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -139, 0, -139, -139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, -142, 0, 0, -142, 0, 0, 0, 0, 0, -142, 0, 0, 0, 0, 0, 0, -142, -142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -142, 0, -142, -142, 0, -142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -142, 0, -142, -142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -144, 0, 0, 0, 0, 0, -144, 0, 0, 0, 0, 0, 0, -144, -144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -103, 0, 0, 0, 0, 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 586, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -389, 588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -184, 0, 0, -184, 0, 0, 0, 0, 0, -184, 0, 0, 0, 0, 0, 0, -184, -184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -184, 0, -184, 68, 0, -184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -184, 0, -184, -184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -219, 0, 0, -219, 0, 0, 0, 0, 0, -219, 0, 0, 0, 0, 0, 0, -219, -219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -219, 0, -219, 0, 0, -219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, -219, -219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -221, 0, 0, 0, 0, 0, -221, 0, 0, 0, 0, 0, 0, -221, -221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -221, 0, -221, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -221, -221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, -223, 0, 0, 0, 0, 0, -223, 0, 0, 0, 0, 0, 0, -223, -223, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -223, 0, -223, 0, 0, -223, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -223, -223, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -227, 0, -227, -227, 0, 0, -227, -227, 0, -227, 0, 0, -227, -227, 0, 0, 0, -227, 0, -227, -227, -227, -227, 0, -227, 0, -227, -227, -227, -227, 0, -227, 0, -227, -227, 0, -227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -227, 0, -227, -227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -225, 0, -225, -225, 0, 0, -225, -225, 0, -225, 0, 0, -225, -225, 0, 0, 0, -225, 0, -225, -225, -225, -225, 0, -225, 0, -225, -225, -225, -225, 0, -225, 0, -225, -225, 0, -225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -225, 0, -225, -225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -226, 0, -226, -226, 0, 0, -226, -226, 0, -226, 0, 0, -226, -226, 0, 0, 0, -226, 0, -226, -226, -226, -226, 0, -226, 0, -226, -226, -226, -226, 0, -226, 0, -226, -226, 0, -226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -226, 0, -226, -226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, -231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -231, -231, -231, -231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 589, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -292, -292, 0, 0, -292, 0, 0, 0, 0, 0, -292, 0, 0, 0, 0, 0, 0, -292, -292, -292, 85, 0, -292, 0, -292, -292, -292, 86, 0, -292, 0, -292, -292, 0, -292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -292, 0, -292, -292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -294, -294, 0, 0, -294, 0, 0, 0, 0, 0, -294, 0, 0, 0, 0, 0, 0, -294, -294, -294, 85, 0, -294, 0, -294, -294, -294, 86, 0, -294, 0, -294, -294, 0, -294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -294, 0, -294, -294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -293, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -293, -293, 0, 0, -293, 0, 0, 0, 0, 0, -293, 0, 0, 0, 0, 0, 0, -293, -293, -293, 85, 0, -293, 0, -293, -293, -293, 86, 0, -293, 0, -293, -293, 0, -293, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -293, 0, -293, -293, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -295, -295, 0, 0, -295, 0, 0, 0, 0, 0, -295, 0, 0, 0, 0, 0, 0, -295, -295, -295, 85, 0, -295, 0, -295, -295, -295, 86, 0, -295, 0, -295, -295, 0, -295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -295, 0, -295, -295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -301, -301, 0, 0, -301, 0, 0, 63, 0, 0, -301, 64, 0, 0, 0, 0, 0, -301, -301, -301, -301, 0, -301, 0, -301, -301, -301, -301, 0, -301, 0, -301, -301, 0, -301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -301, 0, -301, -301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -302, -302, 0, 0, -302, 0, 0, 63, 0, 0, -302, 64, 0, 0, 0, 0, 0, -302, -302, -302, -302, 0, -302, 0, -302, -302, -302, -302, 0, -302, 0, -302, -302, 0, -302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -302, 0, -302, -302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, 0, -74, -74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, -290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -290, -290, -290, -290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -94, 0, 0, 0, -94, -94, 0, 0, -94, -94, 0, 0, 0, 0, 0, -94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 0, -94, -94, 0, -94, 0, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 0, 0, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 0, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, -94, 0, -94, -94, -94, 0, 0, 0, -94, -94, -94, -94, -94, -94, -94, 0, 0, 0, -94, -94,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -159, 0, 0, 0, -159, -159, 0, 0, -159, -159, 0, 0, 0, 0, 0, -159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -159, -159, -159, 0, -159, -159, -159, -159, 0, -159, -159, 0, -159, 0, 0, 0, 0, 0, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, 0, -159, -159, -159, -159, 0, 0, 0, -159, -159, 0, -159, 0, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, 0, -159, 0, -159, 0, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, 0, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, -159, 0, 0, -159, 0, 0, 0, 0, 0, -159, -159, -159, -159, -159, -159, 0, 0, 0, -159, -159,
-158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -158, 0, 0, 0, -158, -158, 0, 0, -158, -158, 0, 0, 0, 0, 0, -158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -158, -158, -158, 0, -158, -158, -158, -158, 0, -158, -158, 0, -158, 0, 0, 0, 0, 0, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, 0, -158, -158, -158, -158, 0, 0, 0, -158, -158, 0, -158, 0, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, 0, -158, 0, -158, 0, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, 0, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, -158, 0, 0, -158, 0, 0, 0, 0, 0, -158, -158, -158, -158, -158, -158, 0, 0, 0, -158, -158,
-157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -157, 0, 0, 0, -157, -157, 0, 0, -157, -157, 0, 0, 0, 0, 0, -157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -157, -157, -157, 0, -157, -157, -157, -157, 0, -157, -157, 0, -157, 0, 0, 0, 0, 0, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, 0, -157, -157, -157, -157, 0, 0, 0, -157, -157, 0, -157, 0, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, 0, -157, 0, -157, 0, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, 0, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, -157, 0, 0, -157, 0, 0, 0, 0, 0, -157, -157, -157, -157, -157, -157, 0, 0, 0, -157, -157,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 119, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-209, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -209, 0, 0, 0, -209, -209, 0, 0, -209, -209, 0, 0, 0, 0, 0, -209, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 0, -209, -209, 0, -209, 0, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 0, 0, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 0, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, -209, 0, -209, -209, -209, 0, 0, 0, -209, -209, -209, -209, -209, -209, -209, 0, 0, 0, -209, -209,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 592, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -129, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, -129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -321, 0, 0, 0, 0, 0, 0, 0, -321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 596, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -22, 0, 0, 0, 0, 0, -22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -28, 0, 0, 0, 0, 0, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -216, 0, 0, 0, 0, 0, -216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -358, -358, 0, 0, 0, 0, 0, -358, 0, 0, 0, 0, 0, 0, 0, -358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -358, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 597, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, -98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -352, -352, -352, 0, -352, -352, -352, -352, 0, -352, -352, 0, -352, 0, 0, 0, 0, 0, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 0, -352, -352, -352, -352, 0, 0, 0, -352, -352, 0, -352, 0, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 0, -352, 0, -352, 0, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 0, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, -352, 0, 0, -352, 0, 0, 0, 0, -352, 0, 0, 0, 0, 0, 0, 0, 0, 0, -352, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -7, 0, 0, 0, 0, 0, 0, 0, -7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -38, 0, 0, 0, 0, 0, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 599, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -191, 0, 0, 0, 0, 0, -191, 0, 0, 0, 0, 0, 0, 0, -191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -48, 0, 0, 0, -48, -48, 0, 0, -48, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -48, 0, -48, 0, 0, -48, -48, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, -48, -48, -48, 0, 0, 0, 0, -48, 0, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, 0, -48, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, 0, -48, -48, -48, 0, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, -48, -48, -48, -48, 0, 0, 0, 0, -48, 0, 0, 0, -48, -48, -48, -48, -48, -48, -48, 0, 0, 0, -48, -48,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -18, 0, 0, 0, 0, 0, -18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -102, 0, 0, 0, 0, 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, -169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -169, -169, -169, -169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -12, 0, 0, 0, 0, 0, -12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, -170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -170, -170, -170, -170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, -229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -229, -229, -229, -229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -234, -234, -234, 0, -234, -234, -234, -234, 0, -234, -234, 0, -234, 0, 0, 0, 0, 0, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 0, -234, -234, -234, -234, 0, 0, 0, -234, -234, 0, -234, 0, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 0, -234, 0, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 0, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, -234, 0, 0, -234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -234, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -351, -351, -351, 0, -351, -351, -351, -351, 0, -351, -351, 0, -351, 0, 0, 0, 0, 0, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 0, -351, -351, -351, -351, 0, 0, 0, -351, -351, 0, -351, 0, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 0, -351, 0, -351, 0, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 0, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, -351, 0, 0, -351, 0, 0, 0, 0, -351, 0, 0, 0, 0, 0, 0, 0, 0, 0, -351, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, 0, 0, 0, -49, -49, 0, 0, -49, -49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, 0, -49, 0, 0, -49, -49, -49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, -49, -49, -49, 0, 0, 0, 0, -49, 0, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, 0, -49, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, 0, -49, -49, -49, 0, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, -49, -49, -49, -49, 0, 0, 0, 0, -49, 0, 0, 0, -49, -49, -49, -49, -49, -49, -49, 0, 0, 0, -49, -49,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, 0, -132, -132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 619, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -162, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -305, 0, 0, 0, -305, -305, 0, 0, -305, -305, 0, 0, 0, 0, 0, -305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, 0, -305, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -312, 0, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, -305, 0, -305, -305, -305, 0, 0, 0, -305, -305, -305, -305, -305, -305, -305, 0, 0, 0, -305, -305,
-323, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -323, 0, 0, 0, -323, -323, 0, 0, -323, -323, 0, 0, 0, 0, 0, -323, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, 0, -323, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -329, 0, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, -323, 0, -323, -323, -323, 0, 0, 0, -323, -323, -323, -323, -323, -323, -323, 0, 0, 0, -323, -323,
-308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -308, 0, 0, 0, -308, -308, 0, 0, -308, -308, 0, 0, 0, 0, 0, -308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, 0, -308, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -315, 0, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, -308, 0, -308, -308, -308, 0, 0, 0, -308, -308, -308, -308, -308, -308, -308, 0, 0, 0, -308, -308,
-309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -309, 0, 0, 0, -309, -309, 0, 0, -309, -309, 0, 0, 0, 0, 0, -309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, 0, -309, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -316, 0, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, 0, -309, -309, -309, 0, 0, 0, -309, -309, -309, -309, -309, -309, -309, 0, 0, 0, -309, -309,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -303, 0, 0, 0, -303, -303, 0, 0, -303, -303, 0, 0, 0, 0, 0, -303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, 0, -303, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -310, 0, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, -303, 0, -303, -303, -303, 0, 0, 0, -303, -303, -303, -303, -303, -303, -303, 0, 0, 0, -303, -303,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -330, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -296, 0, 0, 0, -296, -296, 0, 0, -296, -296, 0, 0, 0, 0, 0, -296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 0, -296, -296, 0, -296, 0, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 0, 0, 0, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 0, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, 0, -296, -296, -296, 0, 0, 0, -296, -296, -296, -296, -296, -296, -296, 0, 0, 0, -296, -296,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -306, 0, 0, 0, -306, -306, 0, 0, -306, -306, 0, 0, 0, 0, 0, -306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, 0, -306, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -313, 0, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, -306, 0, -306, -306, -306, 0, 0, 0, -306, -306, -306, -306, -306, -306, -306, 0, 0, 0, -306, -306,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-199, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -199, 0, 0, 0, -199, -199, 0, 0, -199, -199, 0, 0, 0, 0, 0, -199, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, 0, -199, -199, 0, -199, 0, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, 0, 0, 0, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, 0, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, -199, 0, -199, -199, -199, 0, 0, 0, -199, -199, -199, -199, -199, -199, -199, 0, 0, 0, -199, -199,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -160, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -201, 0, 0, 0, -201, -201, 0, 0, -201, -201, 0, 0, 0, 0, 0, -201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, 0, -201, -201, 0, -201, 0, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, 0, 0, 0, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, 0, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, 0, -201, -201, -201, 0, 0, 0, -201, -201, -201, -201, -201, -201, -201, 0, 0, 0, -201, -201,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-361, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -361, 0, 0, 0, -361, -361, 0, 0, -361, -361, 0, 0, 0, 0, 0, -361, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, 0, -361, -361, 0, -361, 0, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, 0, 0, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, 0, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, -361, 0, -361, -361, -361, 0, 0, 0, -361, -361, -361, -361, -361, -361, -361, 0, 0, 0, -361, -361,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -200, 0, 0, 0, -200, -200, 0, 0, -200, -200, 0, 0, 0, 0, 0, -200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, 0, -200, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, 0, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, -200, 0, 0, 0, -200, -200, -200, -200, -200, -200, -200, 0, 0, 0, -200, -200,
-298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -298, 0, 0, 0, -298, -298, 0, 0, -298, -298, 0, 0, 0, 0, 0, -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 0, -298, -298, 0, -298, 0, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 0, 0, 0, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 0, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, 0, -298, -298, -298, 0, 0, 0, -298, -298, -298, -298, -298, -298, -298, 0, 0, 0, -298, -298,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -362, 0, 0, 0, -362, -362, 0, 0, -362, -362, 0, 0, 0, 0, 0, -362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, 0, -362, -362, 0, -362, 0, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, 0, 0, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, 0, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, 0, -362, -362, -362, 0, 0, 0, -362, -362, -362, -362, -362, -362, -362, 0, 0, 0, -362, -362,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 635, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 637, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -200, 0, 0, 0, -200, -200, 0, 0, -200, -200, 0, 0, 0, 0, 0, -200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, 0, -200, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -203, 0, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, -200, 0, -200, -200, -200, 0, 0, 0, -200, -200, -200, -200, -200, -200, -200, 0, 0, 0, -200, -200,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
fn __action(state: i16, integer: usize) -> i16 {
__ACTION[(state as usize) * 267 + integer]
}
const __EOF_ACTION: &[i16] = &[
-367,
-368,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-277,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-55,
0,
-151,
-155,
-150,
0,
0,
0,
0,
0,
0,
0,
-149,
0,
0,
0,
0,
0,
-54,
0,
0,
0,
0,
0,
-242,
-244,
-152,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-136,
-156,
0,
-180,
-171,
-133,
-134,
-135,
0,
0,
0,
0,
0,
0,
0,
0,
-256,
-257,
-241,
-255,
-243,
-258,
-245,
-259,
-254,
-261,
-246,
-267,
-268,
-247,
-269,
-248,
-249,
-271,
-270,
-250,
-273,
-251,
-274,
-275,
-252,
-253,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-124,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-235,
-272,
-276,
-278,
-282,
-281,
-283,
-137,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-125,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-260,
-262,
-266,
-264,
-263,
-265,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-234,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
];
fn __goto(state: i16, nt: usize) -> i16 {
match nt {
4 => match state {
100 => 576,
_ => 516,
},
7 => match state {
106 => 584,
_ => 535,
},
10 => match state {
58 => 524,
_ => 470,
},
13 => match state {
94 => 570,
_ => 502,
},
16 => match state {
49 => 511,
_ => 456,
},
19 => 347,
22 => match state {
55 => 519,
_ => 465,
},
29 => 103,
34 => 136,
36 => match state {
84 => 552,
85 => 553,
_ => 384,
},
37 => match state {
67 => 533,
_ => 385,
},
38 => match state {
8 => 351,
_ => 383,
},
40 => match state {
28 => 443,
_ => 352,
},
41 => 28,
42 => 353,
43 => match state {
2 => 341,
26 | 44 => 441,
60 | 105 => 526,
93 => 568,
101 => 578,
111 => 593,
113 => 597,
_ => 100,
},
45 => match state {
69 => 106,
35 | 57 | 91 | 103 | 124 => 467,
68 => 534,
86 => 554,
107 => 586,
114 => 599,
115 => 600,
_ => 386,
},
47 => 86,
48 => 478,
49 => 137,
50 => match state {
118 | 132..=135 => 603,
_ => 387,
},
51 => 388,
52 => match state {
99 => 575,
_ => 517,
},
53 => 536,
54 => 471,
55 => 503,
56 => 457,
57 => 466,
58 => 521,
59 => match state {
3 => 343,
118 | 132..=135 => 604,
_ => 389,
},
60 => match state {
90 => 564,
128 => 628,
_ => 589,
},
62 => 565,
63 => match state {
29 => 444,
97 => 573,
_ => 390,
},
64 => match state {
0..=1 => 138,
87 | 126 => 558,
118 | 132..=135 => 605,
_ => 391,
},
65 => match state {
64 => 530,
_ => 392,
},
66 => match state {
70 => 538,
_ => 393,
},
67 => match state {
40 => 491,
41 => 493,
43 => 498,
72 => 540,
79 => 547,
88 => 561,
89 => 563,
90 | 108 | 128 | 130 => 566,
116 => 601,
117 => 602,
120 => 619,
127 => 627,
131 => 631,
_ => 394,
},
69 => match state {
87 | 126 => 559,
118 | 132..=135 => 606,
_ => 395,
},
70 => match state {
1 => 340,
_ => 139,
},
72 => 1,
73 => match state {
126 => 130,
_ => 108,
},
74 => 560,
75 => match state {
130 => 630,
_ => 590,
},
76 => match state {
90 | 108 | 128 | 130 => 109,
_ => 2,
},
77 => 396,
78 => 397,
79 => 398,
80 => 140,
81 => match state {
61 => 527,
104 => 583,
_ => 58,
},
83 => match state {
59 => 525,
_ => 472,
},
84 => match state {
0..=1 => 3,
_ => 399,
},
85 => match state {
2 => 24,
26 | 44 | 54 | 60 | 93 | 99 | 101 | 105 | 111 | 113 => 45,
47 => 94,
6 => 348,
9 => 354,
14 => 367,
15 => 369,
19 => 378,
21 => 381,
23 => 382,
31 | 50 | 96 => 458,
78 => 546,
95 => 571,
109 => 592,
112 => 594,
_ => 400,
},
87 => match state {
71 => 539,
_ => 401,
},
88 => 141,
89 => match state {
57 => 522,
91 => 567,
103 => 580,
124 => 623,
_ => 468,
},
91 => 469,
94 => 142,
95 => 143,
96 => 402,
97 => 607,
98 => match state {
118 | 132..=135 => 608,
_ => 403,
},
99 => 404,
100 => 144,
101 => match state {
50 => 512,
96 => 572,
_ => 49,
},
103 => 459,
104 => match state {
74 => 542,
_ => 405,
},
105 => 406,
106 => match state {
73 => 541,
_ => 407,
},
107 => match state {
62 => 528,
63 => 529,
_ => 408,
},
108 => 409,
109 => 355,
110 => 356,
111 => 145,
112 => match state {
22 => 32,
_ => 146,
},
113 => 147,
114 => 148,
115 => 357,
116 => 358,
117 => 359,
118 => 361,
119 => 363,
120 => 504,
121 => 505,
122 => 365,
123 => 368,
124 => 370,
125 => 371,
126 => 374,
127 => 376,
128 => 379,
129 => 380,
130 => 450,
132 => 451,
133 => 410,
134 => match state {
65 => 531,
66 => 532,
_ => 411,
},
135 => 412,
136 => 413,
137 => 609,
138 => match state {
80 => 548,
81 => 549,
82 => 550,
83 => 551,
_ => 414,
},
139 => 415,
140 => 610,
141 => 4,
142 => 149,
143 => match state {
44 => 500,
_ => 442,
},
144 => match state {
37 | 129 => 476,
42 => 497,
118 | 132 => 611,
119 | 133 => 617,
121 | 134 => 620,
122 => 621,
125 | 135 => 625,
_ => 416,
},
146 => match state {
123 => 129,
_ => 37,
},
147 => match state {
132 => 632,
133 => 633,
134 => 635,
135 => 637,
_ => 612,
},
148 => 150,
149 => 151,
150 => match state {
52 | 92 | 98 => 514,
_ => 462,
},
152 => match state {
46 => 92,
51 => 98,
_ => 52,
},
153 => 152,
154 => match state {
118 | 132..=135 => 613,
_ => 417,
},
155 => 5,
157 => 153,
158 => 154,
159 => 155,
160 => match state {
33 | 46 | 51..=52 | 92 | 98 => 53,
36 | 61 | 104 => 59,
90 | 108 | 128 | 130 => 110,
_ => 6,
},
162 => match state {
7 | 27 => 350,
_ => 156,
},
163 => match state {
5 => 27,
_ => 7,
},
164 => 157,
165 => match state {
33 | 46 | 51..=52 | 92 | 98 => 54,
34 => 55,
36 | 61 | 104 => 60,
53 => 99,
59 => 105,
0..=1 => 158,
6 | 110 => 349,
25 | 37 | 42 | 87 | 90 | 108 | 118..=119 | 121..=123 | 125..=126 | 128..=130 | 132..=135 => 418,
32 => 461,
56 => 520,
102 => 579,
_ => 445,
},
167 => 8,
168 => 159,
169 => match state {
29 | 62..=67 | 70..=71 | 73..=74 | 80..=85 | 97 => 446,
39 => 490,
75 => 543,
76 => 544,
77 => 545,
_ => 38,
},
170 => 39,
171 => 419,
_ => 0,
}
}
const __TERMINAL: &[&str] = &[
r###""!""###,
r###""!=""###,
r###""#define""###,
r###""#elif""###,
r###""#else""###,
r###""#endif""###,
r###""#error""###,
r###""#extension""###,
r###""#if""###,
r###""#ifdef""###,
r###""#ifndef""###,
r###""#include""###,
r###""#line""###,
r###""#pragma""###,
r###""#undef""###,
r###""#version""###,
r###""%""###,
r###""%=""###,
r###""&""###,
r###""&&""###,
r###""&=""###,
r###""(""###,
r###"")""###,
r###""*""###,
r###""*=""###,
r###""+""###,
r###""++""###,
r###""+=""###,
r###"",""###,
r###""-""###,
r###""--""###,
r###""-=""###,
r###"".""###,
r###""/""###,
r###""/=""###,
r###"":""###,
r###"";""###,
r###""<""###,
r###""<<""###,
r###""<<=""###,
r###""<=""###,
r###""=""###,
r###""==""###,
r###"">""###,
r###"">=""###,
r###"">>""###,
r###"">>=""###,
r###""?""###,
r###""[""###,
r###""]""###,
r###""^""###,
r###""^=""###,
r###""^^""###,
r###""atomic_uint""###,
r###""attribute""###,
r###""bool""###,
r###""break""###,
r###""buffer""###,
r###""bvec2""###,
r###""bvec3""###,
r###""bvec4""###,
r###""case""###,
r###""centroid""###,
r###""coherent""###,
r###""compatibility""###,
r###""const""###,
r###""continue""###,
r###""core""###,
r###""default""###,
r###""disable""###,
r###""discard""###,
r###""dmat2""###,
r###""dmat2x2""###,
r###""dmat2x3""###,
r###""dmat2x4""###,
r###""dmat3""###,
r###""dmat3x2""###,
r###""dmat3x3""###,
r###""dmat3x4""###,
r###""dmat4""###,
r###""dmat4x2""###,
r###""dmat4x3""###,
r###""dmat4x4""###,
r###""do""###,
r###""double""###,
r###""dvec2""###,
r###""dvec3""###,
r###""dvec4""###,
r###""else""###,
r###""enable""###,
r###""es""###,
r###""flat""###,
r###""float""###,
r###""for""###,
r###""highp""###,
r###""if""###,
r###""iimage1D""###,
r###""iimage1DArray""###,
r###""iimage2D""###,
r###""iimage2DArray""###,
r###""iimage2DMS""###,
r###""iimage2DMSArray""###,
r###""iimage2DRect""###,
r###""iimage3D""###,
r###""iimageBuffer""###,
r###""iimageCube""###,
r###""iimageCubeArray""###,
r###""image1D""###,
r###""image1DArray""###,
r###""image2D""###,
r###""image2DArray""###,
r###""image2DMS""###,
r###""image2DMSArray""###,
r###""image2DRect""###,
r###""image3D""###,
r###""imageBuffer""###,
r###""imageCube""###,
r###""imageCubeArray""###,
r###""in""###,
r###""inout""###,
r###""int""###,
r###""invariant""###,
r###""isampler1D""###,
r###""isampler1DArray""###,
r###""isampler2D""###,
r###""isampler2DArray""###,
r###""isampler2DMS""###,
r###""isampler2DMSArray""###,
r###""isampler2DRect""###,
r###""isampler3D""###,
r###""isamplerBuffer""###,
r###""isamplerCube""###,
r###""isamplerCubeArray""###,
r###""isubpassInput""###,
r###""isubpassInputMS""###,
r###""itexture1D""###,
r###""itexture1DArray""###,
r###""itexture2D""###,
r###""itexture2DArray""###,
r###""itexture2DMS""###,
r###""itexture2DMSArray""###,
r###""itexture2DRect""###,
r###""itexture3D""###,
r###""itextureBuffer""###,
r###""itextureCube""###,
r###""itextureCubeArray""###,
r###""ivec2""###,
r###""ivec3""###,
r###""ivec4""###,
r###""layout""###,
r###""lowp""###,
r###""mat2""###,
r###""mat2x2""###,
r###""mat2x3""###,
r###""mat2x4""###,
r###""mat3""###,
r###""mat3x2""###,
r###""mat3x3""###,
r###""mat3x4""###,
r###""mat4""###,
r###""mat4x2""###,
r###""mat4x3""###,
r###""mat4x4""###,
r###""mediump""###,
r###""noperspective""###,
r###""out""###,
r###""patch""###,
r###""precise""###,
r###""precision""###,
r###""readonly""###,
r###""require""###,
r###""restrict""###,
r###""return""###,
r###""sample""###,
r###""sampler""###,
r###""sampler1D""###,
r###""sampler1DArray""###,
r###""sampler1DArrayShadow""###,
r###""sampler1DShadow""###,
r###""sampler2D""###,
r###""sampler2DArray""###,
r###""sampler2DArrayShadow""###,
r###""sampler2DMS""###,
r###""sampler2DMSArray""###,
r###""sampler2DRect""###,
r###""sampler2DRectShadow""###,
r###""sampler2DShadow""###,
r###""sampler3D""###,
r###""samplerBuffer""###,
r###""samplerCube""###,
r###""samplerCubeArray""###,
r###""samplerCubeArrayShadow""###,
r###""samplerCubeShadow""###,
r###""samplerShadow""###,
r###""shared""###,
r###""smooth""###,
r###""struct""###,
r###""subpassInput""###,
r###""subpassInputMS""###,
r###""subroutine""###,
r###""switch""###,
r###""texture1D""###,
r###""texture1DArray""###,
r###""texture2D""###,
r###""texture2DArray""###,
r###""texture2DMS""###,
r###""texture2DMSArray""###,
r###""texture2DRect""###,
r###""texture3D""###,
r###""textureBuffer""###,
r###""textureCube""###,
r###""textureCubeArray""###,
r###""uimage1D""###,
r###""uimage1DArray""###,
r###""uimage2D""###,
r###""uimage2DArray""###,
r###""uimage2DMS""###,
r###""uimage2DMSArray""###,
r###""uimage2DRect""###,
r###""uimage3D""###,
r###""uimageBuffer""###,
r###""uimageCube""###,
r###""uimageCubeArray""###,
r###""uint""###,
r###""uniform""###,
r###""usampler1D""###,
r###""usampler1DArray""###,
r###""usampler2D""###,
r###""usampler2DArray""###,
r###""usampler2DMS""###,
r###""usampler2DMSArray""###,
r###""usampler2DRect""###,
r###""usampler3D""###,
r###""usamplerBuffer""###,
r###""usamplerCube""###,
r###""usamplerCubeArray""###,
r###""usubpassInput""###,
r###""usubpassInputMS""###,
r###""uvec2""###,
r###""uvec3""###,
r###""uvec4""###,
r###""varying""###,
r###""vec2""###,
r###""vec3""###,
r###""vec4""###,
r###""void""###,
r###""void""###,
r###""volatile""###,
r###""warn""###,
r###""while""###,
r###""writeonly""###,
r###""{""###,
r###""|""###,
r###""|=""###,
r###""||""###,
r###""}""###,
r###""~""###,
r###"bool_constant"###,
r###"double_constant"###,
r###"float_constant"###,
r###"ident"###,
r###"int_constant"###,
r###"pp_path_absolute"###,
r###"pp_path_relative"###,
r###"pp_rest"###,
r###"ty_name"###,
r###"uint_constant"###,
];
fn __expected_tokens(__state: i16) -> alloc::vec::Vec<alloc::string::String> {
__TERMINAL.iter().enumerate().filter_map(|(index, terminal)| {
let next_state = __action(__state, index);
if next_state == 0 {
None
} else {
Some(alloc::string::ToString::to_string(terminal))
}
}).collect()
}
fn __expected_tokens_from_states<
'i,
'__2,
L,
>(
__states: &[i16],
_: core::marker::PhantomData<(&'i (), L)>,
) -> alloc::vec::Vec<alloc::string::String>
where
L: HasLexerError,
{
__TERMINAL.iter().enumerate().filter_map(|(index, terminal)| {
if __accepts(None, __states, Some(index), core::marker::PhantomData::<(&(), L)>) {
Some(alloc::string::ToString::to_string(terminal))
} else {
None
}
}).collect()
}
pub(crate) struct __StateMachine<'i, '__2, L>
where L: HasLexerError
{
ctx: &'__2 ParseContext,
__phantom: core::marker::PhantomData<(&'i (), L)>,
}
impl<'i, '__2, L> __state_machine::ParserDefinition for __StateMachine<'i, '__2, L>
where L: HasLexerError
{
type Location = LexerPosition;
type Error = L::Error;
type Token = Token;
type TokenIndex = usize;
type Symbol = __Symbol<>;
type Success = ast::TranslationUnit;
type StateIndex = i16;
type Action = i16;
type ReduceIndex = i16;
type NonterminalIndex = usize;
#[inline]
fn start_location(&self) -> Self::Location {
Default::default()
}
#[inline]
fn start_state(&self) -> Self::StateIndex {
0
}
#[inline]
fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
__token_to_integer(token, core::marker::PhantomData::<(&(), L)>)
}
#[inline]
fn action(&self, state: i16, integer: usize) -> i16 {
__action(state, integer)
}
#[inline]
fn error_action(&self, state: i16) -> i16 {
__action(state, 267 - 1)
}
#[inline]
fn eof_action(&self, state: i16) -> i16 {
__EOF_ACTION[state as usize]
}
#[inline]
fn goto(&self, state: i16, nt: usize) -> i16 {
__goto(state, nt)
}
fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
__token_to_symbol(token_index, token, core::marker::PhantomData::<(&(), L)>)
}
fn expected_tokens(&self, state: i16) -> alloc::vec::Vec<alloc::string::String> {
__expected_tokens(state)
}
fn expected_tokens_from_states(&self, states: &[i16]) -> alloc::vec::Vec<alloc::string::String> {
__expected_tokens_from_states(states, core::marker::PhantomData::<(&(), L)>)
}
#[inline]
fn uses_error_recovery(&self) -> bool {
false
}
#[inline]
fn error_recovery_symbol(
&self,
recovery: __state_machine::ErrorRecovery<Self>,
) -> Self::Symbol {
panic!("error recovery not enabled for this grammar")
}
fn reduce(
&mut self,
action: i16,
start_location: Option<&Self::Location>,
states: &mut alloc::vec::Vec<i16>,
symbols: &mut alloc::vec::Vec<__state_machine::SymbolTriple<Self>>,
) -> Option<__state_machine::ParseResult<Self>> {
__reduce(
self.ctx,
action,
start_location,
states,
symbols,
core::marker::PhantomData::<(&(), L)>,
)
}
fn simulate_reduce(&self, action: i16) -> __state_machine::SimulatedReduce<Self> {
__simulate_reduce(action, core::marker::PhantomData::<(&(), L)>)
}
}
fn __token_to_integer<
'i,
L,
>(
__token: &Token,
_: core::marker::PhantomData<(&'i (), L)>,
) -> Option<usize>
where
L: HasLexerError,
{
match *__token {
Token::Bang if true => Some(0),
Token::NeOp if true => Some(1),
Token::PpDefine if true => Some(2),
Token::PpElif if true => Some(3),
Token::PpElse if true => Some(4),
Token::PpEndIf if true => Some(5),
Token::PpError if true => Some(6),
Token::PpExtension if true => Some(7),
Token::PpIf if true => Some(8),
Token::PpIfDef if true => Some(9),
Token::PpIfNDef if true => Some(10),
Token::PpInclude if true => Some(11),
Token::PpLine if true => Some(12),
Token::PpPragma if true => Some(13),
Token::PpUndef if true => Some(14),
Token::PpVersion if true => Some(15),
Token::Percent if true => Some(16),
Token::ModAssign if true => Some(17),
Token::Ampersand if true => Some(18),
Token::AndOp if true => Some(19),
Token::AndAssign if true => Some(20),
Token::LeftParen if true => Some(21),
Token::RightParen if true => Some(22),
Token::Star if true => Some(23),
Token::MulAssign if true => Some(24),
Token::Plus if true => Some(25),
Token::IncOp if true => Some(26),
Token::AddAssign if true => Some(27),
Token::Comma if true => Some(28),
Token::Dash if true => Some(29),
Token::DecOp if true => Some(30),
Token::SubAssign if true => Some(31),
Token::Dot if true => Some(32),
Token::Slash if true => Some(33),
Token::DivAssign if true => Some(34),
Token::Colon if true => Some(35),
Token::Semicolon if true => Some(36),
Token::LeftAngle if true => Some(37),
Token::LeftOp if true => Some(38),
Token::LeftAssign if true => Some(39),
Token::LeOp if true => Some(40),
Token::Equal if true => Some(41),
Token::EqOp if true => Some(42),
Token::RightAngle if true => Some(43),
Token::GeOp if true => Some(44),
Token::RightOp if true => Some(45),
Token::RightAssign if true => Some(46),
Token::Question if true => Some(47),
Token::LeftBracket if true => Some(48),
Token::RightBracket if true => Some(49),
Token::Caret if true => Some(50),
Token::XorAssign if true => Some(51),
Token::XorOp if true => Some(52),
Token::AtomicUInt if true => Some(53),
Token::Attribute if true => Some(54),
Token::Bool if true => Some(55),
Token::Break if true => Some(56),
Token::Buffer if true => Some(57),
Token::BVec2 if true => Some(58),
Token::BVec3 if true => Some(59),
Token::BVec4 if true => Some(60),
Token::Case if true => Some(61),
Token::Centroid if true => Some(62),
Token::Coherent if true => Some(63),
Token::PpCompatibility if true => Some(64),
Token::Const if true => Some(65),
Token::Continue if true => Some(66),
Token::PpCore if true => Some(67),
Token::Default if true => Some(68),
Token::PpExtDisable if true => Some(69),
Token::Discard if true => Some(70),
Token::DMat2 if true => Some(71),
Token::DMat2x2 if true => Some(72),
Token::DMat2x3 if true => Some(73),
Token::DMat2x4 if true => Some(74),
Token::DMat3 if true => Some(75),
Token::DMat3x2 if true => Some(76),
Token::DMat3x3 if true => Some(77),
Token::DMat3x4 if true => Some(78),
Token::DMat4 if true => Some(79),
Token::DMat4x2 if true => Some(80),
Token::DMat4x3 if true => Some(81),
Token::DMat4x4 if true => Some(82),
Token::Do if true => Some(83),
Token::Double if true => Some(84),
Token::DVec2 if true => Some(85),
Token::DVec3 if true => Some(86),
Token::DVec4 if true => Some(87),
Token::Else if true => Some(88),
Token::PpExtEnable if true => Some(89),
Token::PpEs if true => Some(90),
Token::Flat if true => Some(91),
Token::Float if true => Some(92),
Token::For if true => Some(93),
Token::HighPrecision if true => Some(94),
Token::If if true => Some(95),
Token::IImage1D if true => Some(96),
Token::IImage1DArray if true => Some(97),
Token::IImage2D if true => Some(98),
Token::IImage2DArray if true => Some(99),
Token::IImage2DMs if true => Some(100),
Token::IImage2DMsArray if true => Some(101),
Token::IImage2DRect if true => Some(102),
Token::IImage3D if true => Some(103),
Token::IImageBuffer if true => Some(104),
Token::IImageCube if true => Some(105),
Token::IImageCubeArray if true => Some(106),
Token::Image1D if true => Some(107),
Token::Image1DArray if true => Some(108),
Token::Image2D if true => Some(109),
Token::Image2DArray if true => Some(110),
Token::Image2DMs if true => Some(111),
Token::Image2DMsArray if true => Some(112),
Token::Image2DRect if true => Some(113),
Token::Image3D if true => Some(114),
Token::ImageBuffer if true => Some(115),
Token::ImageCube if true => Some(116),
Token::ImageCubeArray if true => Some(117),
Token::In if true => Some(118),
Token::InOut if true => Some(119),
Token::Int if true => Some(120),
Token::Invariant if true => Some(121),
Token::ISampler1D if true => Some(122),
Token::ISampler1DArray if true => Some(123),
Token::ISampler2D if true => Some(124),
Token::ISampler2DArray if true => Some(125),
Token::ISampler2DMs if true => Some(126),
Token::ISampler2DMsArray if true => Some(127),
Token::ISampler2DRect if true => Some(128),
Token::ISampler3D if true => Some(129),
Token::ISamplerBuffer if true => Some(130),
Token::ISamplerCube if true => Some(131),
Token::ISamplerCubeArray if true => Some(132),
Token::ISubpassInput if true => Some(133),
Token::ISubpassInputMs if true => Some(134),
Token::ITexture1D if true => Some(135),
Token::ITexture1DArray if true => Some(136),
Token::ITexture2D if true => Some(137),
Token::ITexture2DArray if true => Some(138),
Token::ITexture2DMs if true => Some(139),
Token::ITexture2DMsArray if true => Some(140),
Token::ITexture2DRect if true => Some(141),
Token::ITexture3D if true => Some(142),
Token::ITextureBuffer if true => Some(143),
Token::ITextureCube if true => Some(144),
Token::ITextureCubeArray if true => Some(145),
Token::IVec2 if true => Some(146),
Token::IVec3 if true => Some(147),
Token::IVec4 if true => Some(148),
Token::Layout if true => Some(149),
Token::LowPrecision if true => Some(150),
Token::Mat2 if true => Some(151),
Token::Mat2x2 if true => Some(152),
Token::Mat2x3 if true => Some(153),
Token::Mat2x4 if true => Some(154),
Token::Mat3 if true => Some(155),
Token::Mat3x2 if true => Some(156),
Token::Mat3x3 if true => Some(157),
Token::Mat3x4 if true => Some(158),
Token::Mat4 if true => Some(159),
Token::Mat4x2 if true => Some(160),
Token::Mat4x3 if true => Some(161),
Token::Mat4x4 if true => Some(162),
Token::MediumPrecision if true => Some(163),
Token::NoPerspective if true => Some(164),
Token::Out if true => Some(165),
Token::Patch if true => Some(166),
Token::Precise if true => Some(167),
Token::Precision if true => Some(168),
Token::ReadOnly if true => Some(169),
Token::PpExtRequire if true => Some(170),
Token::Restrict if true => Some(171),
Token::Return if true => Some(172),
Token::Sample if true => Some(173),
Token::Sampler if true => Some(174),
Token::Sampler1D if true => Some(175),
Token::Sampler1DArray if true => Some(176),
Token::Sampler1DArrayShadow if true => Some(177),
Token::Sampler1DShadow if true => Some(178),
Token::Sampler2D if true => Some(179),
Token::Sampler2DArray if true => Some(180),
Token::Sampler2DArrayShadow if true => Some(181),
Token::Sampler2DMs if true => Some(182),
Token::Sampler2DMsArray if true => Some(183),
Token::Sampler2DRect if true => Some(184),
Token::Sampler2DRectShadow if true => Some(185),
Token::Sampler2DShadow if true => Some(186),
Token::Sampler3D if true => Some(187),
Token::SamplerBuffer if true => Some(188),
Token::SamplerCube if true => Some(189),
Token::SamplerCubeArray if true => Some(190),
Token::SamplerCubeArrayShadow if true => Some(191),
Token::SamplerCubeShadow if true => Some(192),
Token::SamplerShadow if true => Some(193),
Token::Shared if true => Some(194),
Token::Smooth if true => Some(195),
Token::Struct if true => Some(196),
Token::SubpassInput if true => Some(197),
Token::SubpassInputMs if true => Some(198),
Token::Subroutine if true => Some(199),
Token::Switch if true => Some(200),
Token::Texture1D if true => Some(201),
Token::Texture1DArray if true => Some(202),
Token::Texture2D if true => Some(203),
Token::Texture2DArray if true => Some(204),
Token::Texture2DMs if true => Some(205),
Token::Texture2DMsArray if true => Some(206),
Token::Texture2DRect if true => Some(207),
Token::Texture3D if true => Some(208),
Token::TextureBuffer if true => Some(209),
Token::TextureCube if true => Some(210),
Token::TextureCubeArray if true => Some(211),
Token::UImage1D if true => Some(212),
Token::UImage1DArray if true => Some(213),
Token::UImage2D if true => Some(214),
Token::UImage2DArray if true => Some(215),
Token::UImage2DMs if true => Some(216),
Token::UImage2DMsArray if true => Some(217),
Token::UImage2DRect if true => Some(218),
Token::UImage3D if true => Some(219),
Token::UImageBuffer if true => Some(220),
Token::UImageCube if true => Some(221),
Token::UImageCubeArray if true => Some(222),
Token::UInt if true => Some(223),
Token::Uniform if true => Some(224),
Token::USampler1D if true => Some(225),
Token::USampler1DArray if true => Some(226),
Token::USampler2D if true => Some(227),
Token::USampler2DArray if true => Some(228),
Token::USampler2DMs if true => Some(229),
Token::USampler2DMsArray if true => Some(230),
Token::USampler2DRect if true => Some(231),
Token::USampler3D if true => Some(232),
Token::USamplerBuffer if true => Some(233),
Token::USamplerCube if true => Some(234),
Token::USamplerCubeArray if true => Some(235),
Token::USubpassInput if true => Some(236),
Token::USubpassInputMs if true => Some(237),
Token::UVec2 if true => Some(238),
Token::UVec3 if true => Some(239),
Token::UVec4 if true => Some(240),
Token::Varying if true => Some(241),
Token::Vec2 if true => Some(242),
Token::Vec3 if true => Some(243),
Token::Vec4 if true => Some(244),
Token::Void if true => Some(245),
Token::Void if true => Some(246),
Token::Volatile if true => Some(247),
Token::PpExtWarn if true => Some(248),
Token::While if true => Some(249),
Token::WriteOnly if true => Some(250),
Token::LeftBrace if true => Some(251),
Token::VerticalBar if true => Some(252),
Token::OrAssign if true => Some(253),
Token::OrOp if true => Some(254),
Token::RightBrace if true => Some(255),
Token::Tilde if true => Some(256),
Token::BoolConstant(_) if true => Some(257),
Token::DoubleConstant(_) if true => Some(258),
Token::FloatConstant(_) if true => Some(259),
Token::Identifier(_) if true => Some(260),
Token::IntConstant(_) if true => Some(261),
Token::PpPathAbsolute(_) if true => Some(262),
Token::PpPathRelative(_) if true => Some(263),
Token::PpRest(_) if true => Some(264),
Token::TypeName(_) if true => Some(265),
Token::UIntConstant(_) if true => Some(266),
_ => None,
}
}
fn __token_to_symbol<
'i,
L,
>(
__token_index: usize,
__token: Token,
_: core::marker::PhantomData<(&'i (), L)>,
) -> __Symbol<>
where
L: HasLexerError,
{
match __token_index {
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 => __Symbol::Variant0(__token),
_ => unreachable!(),
}
}
fn __simulate_reduce<
'i,
'__2,
L,
>(
__reduce_index: i16,
_: core::marker::PhantomData<(&'i (), L)>,
) -> __state_machine::SimulatedReduce<__StateMachine<'i, '__2, L>>
where
L: HasLexerError,
{
match __reduce_index {
0 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 0,
}
}
1 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 1,
}
}
2 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 1,
}
}
3 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 2,
}
}
4 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 3,
}
}
5 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 3,
}
}
6 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 4,
}
}
7 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 4,
}
}
8 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 5,
}
}
9 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 6,
}
}
10 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 6,
}
}
11 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 7,
}
}
12 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 7,
}
}
13 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 8,
}
}
14 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 9,
}
}
15 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 9,
}
}
16 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 10,
}
}
17 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 10,
}
}
18 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 11,
}
}
19 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 12,
}
}
20 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 12,
}
}
21 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 13,
}
}
22 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 13,
}
}
23 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 14,
}
}
24 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 15,
}
}
25 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 15,
}
}
26 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 16,
}
}
27 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 16,
}
}
28 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 17,
}
}
29 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 18,
}
}
30 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 18,
}
}
31 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 19,
}
}
32 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 19,
}
}
33 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 20,
}
}
34 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 21,
}
}
35 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 21,
}
}
36 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 22,
}
}
37 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 22,
}
}
38 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 23,
}
}
39 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 24,
}
}
40 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 24,
}
}
41 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 25,
}
}
42 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 26,
}
}
43 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 26,
}
}
44 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 27,
}
}
45 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 28,
}
}
46 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 28,
}
}
47 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 29,
}
}
48 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 29,
}
}
49 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 30,
}
}
50 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 31,
}
}
51 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 32,
}
}
52 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 33,
}
}
53 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 34,
}
}
54 => __state_machine::SimulatedReduce::Accept,
55 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 36,
}
}
56 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 36,
}
}
57 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 36,
}
}
58 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 37,
}
}
59 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 37,
}
}
60 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 38,
}
}
61 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 39,
}
}
62 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 39,
}
}
63 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 40,
}
}
64 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 41,
}
}
65 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 41,
}
}
66 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 42,
}
}
67 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 42,
}
}
68 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 43,
}
}
69 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 43,
}
}
70 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 44,
}
}
71 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 44,
}
}
72 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 45,
}
}
73 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 45,
}
}
74 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 46,
}
}
75 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 46,
}
}
76 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 47,
}
}
77 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
78 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
79 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
80 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
81 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
82 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
83 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
84 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
85 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
86 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
87 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 48,
}
}
88 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 49,
}
}
89 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 49,
}
}
90 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 49,
}
}
91 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 49,
}
}
92 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 50,
}
}
93 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 51,
}
}
94 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 51,
}
}
95 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 52,
}
}
96 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 52,
}
}
97 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 52,
}
}
98 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 52,
}
}
99 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 53,
}
}
100 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 53,
}
}
101 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 53,
}
}
102 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 53,
}
}
103 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 54,
}
}
104 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 54,
}
}
105 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 54,
}
}
106 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 54,
}
}
107 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 55,
}
}
108 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 55,
}
}
109 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 55,
}
}
110 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 55,
}
}
111 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 56,
}
}
112 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 56,
}
}
113 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 56,
}
}
114 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 56,
}
}
115 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 57,
}
}
116 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 57,
}
}
117 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 57,
}
}
118 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 57,
}
}
119 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 58,
}
}
120 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 58,
}
}
121 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 58,
}
}
122 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 58,
}
}
123 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 59,
}
}
124 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 59,
}
}
125 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 60,
}
}
126 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 61,
}
}
127 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 61,
}
}
128 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 62,
}
}
129 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 62,
}
}
130 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 63,
}
}
131 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 63,
}
}
132 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 64,
}
}
133 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 64,
}
}
134 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 64,
}
}
135 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 64,
}
}
136 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 64,
}
}
137 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 65,
}
}
138 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 65,
}
}
139 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 65,
}
}
140 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 66,
}
}
141 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 66,
}
}
142 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 67,
}
}
143 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 67,
}
}
144 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 68,
}
}
145 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 68,
}
}
146 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 69,
}
}
147 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 69,
}
}
148 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 70,
}
}
149 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 70,
}
}
150 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 70,
}
}
151 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 70,
}
}
152 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 71,
}
}
153 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 71,
}
}
154 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 72,
}
}
155 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 72,
}
}
156 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 73,
}
}
157 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 74,
}
}
158 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 74,
}
}
159 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 75,
}
}
160 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 75,
}
}
161 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 75,
}
}
162 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 75,
}
}
163 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 76,
}
}
164 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 76,
}
}
165 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 77,
}
}
166 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 78,
}
}
167 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 78,
}
}
168 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 79,
}
}
169 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 79,
}
}
170 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 80,
}
}
171 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 81,
}
}
172 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 81,
}
}
173 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 81,
}
}
174 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 81,
}
}
175 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 82,
}
}
176 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 82,
}
}
177 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 83,
}
}
178 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 84,
}
}
179 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 85,
}
}
180 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 86,
}
}
181 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 86,
}
}
182 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 87,
}
}
183 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 87,
}
}
184 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 88,
}
}
185 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 88,
}
}
186 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 89,
}
}
187 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 90,
}
}
188 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 90,
}
}
189 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 91,
}
}
190 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 91,
}
}
191 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 92,
}
}
192 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 92,
}
}
193 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 93,
}
}
194 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 94,
}
}
195 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 95,
}
}
196 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 95,
}
}
197 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 95,
}
}
198 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 96,
}
}
199 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 96,
}
}
200 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 96,
}
}
201 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 97,
}
}
202 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 97,
}
}
203 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 97,
}
}
204 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 98,
}
}
205 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 99,
}
}
206 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 99,
}
}
207 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 99,
}
}
208 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 99,
}
}
209 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 99,
}
}
210 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 100,
}
}
211 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 101,
}
}
212 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 102,
}
}
213 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 102,
}
}
214 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 103,
}
}
215 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 103,
}
}
216 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 103,
}
}
217 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 104,
}
}
218 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 104,
}
}
219 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 105,
}
}
220 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 105,
}
}
221 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 106,
}
}
222 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 106,
}
}
223 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 107,
}
}
224 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 107,
}
}
225 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 107,
}
}
226 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 107,
}
}
227 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 108,
}
}
228 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 108,
}
}
229 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 108,
}
}
230 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 108,
}
}
231 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 108,
}
}
232 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 108,
}
}
233 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 109,
}
}
234 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 110,
}
}
235 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 111,
}
}
236 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 112,
}
}
237 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 113,
}
}
238 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 113,
}
}
239 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 113,
}
}
240 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
241 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 114,
}
}
242 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
243 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 114,
}
}
244 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
245 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
246 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
247 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
248 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
249 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
250 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
251 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
252 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
253 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 114,
}
}
254 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 115,
}
}
255 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 116,
}
}
256 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 116,
}
}
257 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 117,
}
}
258 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 118,
}
}
259 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 119,
}
}
260 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 119,
}
}
261 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 120,
}
}
262 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 121,
}
}
263 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 121,
}
}
264 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 121,
}
}
265 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 121,
}
}
266 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 122,
}
}
267 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 123,
}
}
268 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 124,
}
}
269 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 125,
}
}
270 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 125,
}
}
271 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 126,
}
}
272 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 126,
}
}
273 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 127,
}
}
274 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 128,
}
}
275 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 129,
}
}
276 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 129,
}
}
277 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 130,
}
}
278 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 131,
}
}
279 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 131,
}
}
280 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 132,
}
}
281 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 132,
}
}
282 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 132,
}
}
283 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
284 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
285 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
286 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
287 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
288 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 133,
}
}
289 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 133,
}
}
290 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 134,
}
}
291 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 134,
}
}
292 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 134,
}
}
293 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 134,
}
}
294 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 134,
}
}
295 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 135,
}
}
296 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 135,
}
}
297 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 136,
}
}
298 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 137,
}
}
299 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 138,
}
}
300 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 138,
}
}
301 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 138,
}
}
302 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
303 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
304 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
305 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
306 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
307 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
308 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 139,
}
}
309 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
310 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
311 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
312 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
313 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
314 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
315 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 140,
}
}
316 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 141,
}
}
317 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 142,
}
}
318 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 142,
}
}
319 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 142,
}
}
320 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 143,
}
}
321 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 143,
}
}
322 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 144,
}
}
323 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 144,
}
}
324 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 145,
}
}
325 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 145,
}
}
326 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 146,
}
}
327 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 146,
}
}
328 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 147,
}
}
329 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 147,
}
}
330 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 148,
}
}
331 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
332 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
333 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
334 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
335 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
336 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
337 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
338 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
339 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
340 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
341 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
342 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
343 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
344 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
345 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
346 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
347 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
348 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 149,
}
}
349 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 149,
}
}
350 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 150,
}
}
351 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 150,
}
}
352 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 151,
}
}
353 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 151,
}
}
354 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 152,
}
}
355 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 152,
}
}
356 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 153,
}
}
357 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 5,
nonterminal_produced: 153,
}
}
358 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 3,
nonterminal_produced: 153,
}
}
359 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 4,
nonterminal_produced: 153,
}
}
360 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 6,
nonterminal_produced: 154,
}
}
361 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 7,
nonterminal_produced: 154,
}
}
362 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 155,
}
}
363 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 156,
}
}
364 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 156,
}
}
365 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 157,
}
}
366 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 158,
}
}
367 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 158,
}
}
368 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 159,
}
}
369 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 160,
}
}
370 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 160,
}
}
371 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 161,
}
}
372 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 161,
}
}
373 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 162,
}
}
374 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 163,
}
}
375 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 163,
}
}
376 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 164,
}
}
377 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 164,
}
}
378 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 164,
}
}
379 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 164,
}
}
380 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 164,
}
}
381 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 165,
}
}
382 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 165,
}
}
383 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 166,
}
}
384 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 0,
nonterminal_produced: 166,
}
}
385 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 167,
}
}
386 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 167,
}
}
387 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 167,
}
}
388 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
389 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
390 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
391 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
392 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
393 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
394 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
395 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
396 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
397 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
398 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
399 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
400 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
401 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
402 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
403 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
404 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
405 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
406 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
407 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
408 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
409 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
410 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
411 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
412 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
413 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
414 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
415 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
416 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
417 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
418 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
419 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
420 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
421 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
422 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
423 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
424 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
425 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
426 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
427 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
428 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
429 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
430 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
431 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
432 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
433 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
434 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
435 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
436 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
437 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
438 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
439 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
440 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
441 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
442 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
443 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
444 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
445 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
446 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
447 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
448 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
449 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
450 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
451 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
452 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
453 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
454 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
455 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
456 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
457 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
458 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
459 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
460 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
461 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
462 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
463 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
464 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
465 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
466 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
467 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
468 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
469 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
470 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
471 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
472 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
473 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
474 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
475 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
476 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
477 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
478 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
479 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
480 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
481 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
482 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
483 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
484 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
485 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
486 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
487 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
488 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
489 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
490 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
491 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
492 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
493 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
494 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
495 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
496 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
497 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
498 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
499 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
500 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
501 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
502 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
503 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
504 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
505 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
506 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
507 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
508 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
509 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
510 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
511 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
512 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
513 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
514 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
515 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
516 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
517 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
518 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
519 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
520 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
521 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
522 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
523 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
524 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
525 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
526 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
527 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
528 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
529 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
530 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
531 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
532 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
533 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
534 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
535 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
536 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 168,
}
}
537 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 169,
}
}
538 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 2,
nonterminal_produced: 169,
}
}
539 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 170,
}
}
540 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
541 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
542 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
543 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
544 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
545 => {
__state_machine::SimulatedReduce::Reduce {
states_to_pop: 1,
nonterminal_produced: 171,
}
}
_ => panic!("invalid reduction index {}", __reduce_index)
}
}
pub struct TranslationUnitParser {
_priv: (),
}
impl TranslationUnitParser {
pub fn new() -> TranslationUnitParser {
TranslationUnitParser {
_priv: (),
}
}
#[allow(dead_code)]
pub fn parse<
'i,
L,
__TOKEN: __ToTriple<'i, L, >,
__TOKENS: IntoIterator<Item=__TOKEN>,
>(
&self,
ctx: &ParseContext,
__tokens0: __TOKENS,
) -> Result<ast::TranslationUnit, __lalrpop_util::ParseError<LexerPosition, Token, L::Error>>
where
L: HasLexerError,
{
let __tokens = __tokens0.into_iter();
let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
__state_machine::Parser::drive(
__StateMachine {
ctx,
__phantom: core::marker::PhantomData::<(&(), L)>,
},
__tokens,
)
}
}
fn __accepts<
'i,
'__2,
L,
>(
__error_state: Option<i16>,
__states: &[i16],
__opt_integer: Option<usize>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> bool
where
L: HasLexerError,
{
let mut __states = __states.to_vec();
__states.extend(__error_state);
loop {
let mut __states_len = __states.len();
let __top = __states[__states_len - 1];
let __action = match __opt_integer {
None => __EOF_ACTION[__top as usize],
Some(__integer) => __action(__top, __integer),
};
if __action == 0 { return false; }
if __action > 0 { return true; }
let (__to_pop, __nt) = match __simulate_reduce(-(__action + 1), core::marker::PhantomData::<(&(), L)>) {
__state_machine::SimulatedReduce::Reduce {
states_to_pop, nonterminal_produced
} => (states_to_pop, nonterminal_produced),
__state_machine::SimulatedReduce::Accept => return true,
};
__states_len -= __to_pop;
__states.truncate(__states_len);
let __top = __states[__states_len - 1];
let __next_state = __goto(__top, __nt);
__states.push(__next_state);
}
}
pub(crate) fn __reduce<
'i,
L,
>(
ctx: &ParseContext,
__action: i16,
__lookahead_start: Option<&LexerPosition>,
__states: &mut alloc::vec::Vec<i16>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> Option<Result<ast::TranslationUnit,__lalrpop_util::ParseError<LexerPosition, Token, L::Error>>>
where
L: HasLexerError,
{
let (__pop_states, __nonterminal) = match __action {
0 => {
__reduce0(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
1 => {
__reduce1(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
2 => {
__reduce2(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
3 => {
__reduce3(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
4 => {
__reduce4(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
5 => {
__reduce5(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
6 => {
__reduce6(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
7 => {
__reduce7(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
8 => {
__reduce8(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
9 => {
__reduce9(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
10 => {
__reduce10(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
11 => {
__reduce11(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
12 => {
__reduce12(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
13 => {
__reduce13(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
14 => {
__reduce14(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
15 => {
__reduce15(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
16 => {
__reduce16(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
17 => {
__reduce17(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
18 => {
__reduce18(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
19 => {
__reduce19(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
20 => {
__reduce20(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
21 => {
__reduce21(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
22 => {
__reduce22(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
23 => {
__reduce23(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
24 => {
__reduce24(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
25 => {
__reduce25(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
26 => {
__reduce26(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
27 => {
__reduce27(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
28 => {
__reduce28(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
29 => {
__reduce29(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
30 => {
__reduce30(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
31 => {
__reduce31(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
32 => {
__reduce32(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
33 => {
__reduce33(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
34 => {
__reduce34(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
35 => {
__reduce35(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
36 => {
__reduce36(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
37 => {
__reduce37(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
38 => {
__reduce38(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
39 => {
__reduce39(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
40 => {
__reduce40(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
41 => {
__reduce41(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
42 => {
__reduce42(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
43 => {
__reduce43(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
44 => {
__reduce44(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
45 => {
__reduce45(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
46 => {
__reduce46(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
47 => {
__reduce47(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
48 => {
__reduce48(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
49 => {
__reduce49(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
50 => {
__reduce50(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
51 => {
__reduce51(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
52 => {
__reduce52(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
53 => {
__reduce53(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
54 => {
let __sym0 = __pop_Variant24(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action0::<L>(ctx, __sym0);
return Some(Ok(__nt));
}
55 => {
__reduce55(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
56 => {
__reduce56(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
57 => {
__reduce57(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
58 => {
__reduce58(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
59 => {
__reduce59(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
60 => {
__reduce60(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
61 => {
__reduce61(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
62 => {
__reduce62(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
63 => {
__reduce63(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
64 => {
__reduce64(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
65 => {
__reduce65(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
66 => {
__reduce66(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
67 => {
__reduce67(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
68 => {
__reduce68(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
69 => {
__reduce69(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
70 => {
__reduce70(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
71 => {
__reduce71(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
72 => {
__reduce72(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
73 => {
__reduce73(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
74 => {
__reduce74(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
75 => {
__reduce75(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
76 => {
__reduce76(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
77 => {
__reduce77(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
78 => {
__reduce78(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
79 => {
__reduce79(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
80 => {
__reduce80(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
81 => {
__reduce81(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
82 => {
__reduce82(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
83 => {
__reduce83(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
84 => {
__reduce84(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
85 => {
__reduce85(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
86 => {
__reduce86(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
87 => {
__reduce87(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
88 => {
__reduce88(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
89 => {
__reduce89(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
90 => {
__reduce90(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
91 => {
__reduce91(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
92 => {
__reduce92(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
93 => {
__reduce93(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
94 => {
__reduce94(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
95 => {
__reduce95(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
96 => {
__reduce96(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
97 => {
__reduce97(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
98 => {
__reduce98(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
99 => {
__reduce99(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
100 => {
__reduce100(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
101 => {
__reduce101(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
102 => {
__reduce102(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
103 => {
__reduce103(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
104 => {
__reduce104(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
105 => {
__reduce105(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
106 => {
__reduce106(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
107 => {
__reduce107(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
108 => {
__reduce108(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
109 => {
__reduce109(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
110 => {
__reduce110(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
111 => {
__reduce111(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
112 => {
__reduce112(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
113 => {
__reduce113(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
114 => {
__reduce114(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
115 => {
__reduce115(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
116 => {
__reduce116(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
117 => {
__reduce117(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
118 => {
__reduce118(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
119 => {
__reduce119(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
120 => {
__reduce120(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
121 => {
__reduce121(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
122 => {
__reduce122(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
123 => {
__reduce123(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
124 => {
__reduce124(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
125 => {
__reduce125(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
126 => {
__reduce126(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
127 => {
__reduce127(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
128 => {
__reduce128(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
129 => {
__reduce129(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
130 => {
__reduce130(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
131 => {
__reduce131(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
132 => {
__reduce132(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
133 => {
__reduce133(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
134 => {
__reduce134(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
135 => {
__reduce135(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
136 => {
__reduce136(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
137 => {
__reduce137(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
138 => {
__reduce138(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
139 => {
__reduce139(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
140 => {
__reduce140(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
141 => {
__reduce141(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
142 => {
__reduce142(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
143 => {
__reduce143(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
144 => {
__reduce144(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
145 => {
__reduce145(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
146 => {
__reduce146(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
147 => {
__reduce147(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
148 => {
__reduce148(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
149 => {
__reduce149(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
150 => {
__reduce150(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
151 => {
__reduce151(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
152 => {
__reduce152(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
153 => {
__reduce153(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
154 => {
__reduce154(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
155 => {
__reduce155(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
156 => {
__reduce156(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
157 => {
__reduce157(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
158 => {
__reduce158(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
159 => {
__reduce159(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
160 => {
__reduce160(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
161 => {
__reduce161(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
162 => {
__reduce162(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
163 => {
__reduce163(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
164 => {
__reduce164(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
165 => {
__reduce165(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
166 => {
__reduce166(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
167 => {
__reduce167(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
168 => {
__reduce168(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
169 => {
__reduce169(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
170 => {
__reduce170(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
171 => {
__reduce171(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
172 => {
__reduce172(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
173 => {
__reduce173(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
174 => {
__reduce174(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
175 => {
__reduce175(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
176 => {
__reduce176(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
177 => {
__reduce177(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
178 => {
__reduce178(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
179 => {
__reduce179(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
180 => {
__reduce180(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
181 => {
__reduce181(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
182 => {
__reduce182(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
183 => {
__reduce183(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
184 => {
__reduce184(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
185 => {
__reduce185(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
186 => {
__reduce186(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
187 => {
__reduce187(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
188 => {
__reduce188(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
189 => {
__reduce189(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
190 => {
__reduce190(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
191 => {
__reduce191(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
192 => {
__reduce192(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
193 => {
__reduce193(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
194 => {
__reduce194(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
195 => {
__reduce195(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
196 => {
__reduce196(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
197 => {
__reduce197(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
198 => {
__reduce198(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
199 => {
__reduce199(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
200 => {
__reduce200(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
201 => {
__reduce201(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
202 => {
__reduce202(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
203 => {
__reduce203(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
204 => {
__reduce204(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
205 => {
__reduce205(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
206 => {
__reduce206(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
207 => {
__reduce207(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
208 => {
__reduce208(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
209 => {
__reduce209(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
210 => {
__reduce210(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
211 => {
__reduce211(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
212 => {
__reduce212(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
213 => {
__reduce213(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
214 => {
__reduce214(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
215 => {
__reduce215(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
216 => {
__reduce216(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
217 => {
__reduce217(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
218 => {
__reduce218(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
219 => {
__reduce219(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
220 => {
__reduce220(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
221 => {
__reduce221(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
222 => {
__reduce222(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
223 => {
__reduce223(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
224 => {
__reduce224(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
225 => {
__reduce225(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
226 => {
__reduce226(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
227 => {
__reduce227(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
228 => {
__reduce228(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
229 => {
__reduce229(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
230 => {
__reduce230(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
231 => {
__reduce231(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
232 => {
__reduce232(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
233 => {
__reduce233(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
234 => {
__reduce234(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
235 => {
__reduce235(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
236 => {
__reduce236(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
237 => {
__reduce237(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
238 => {
__reduce238(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
239 => {
__reduce239(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
240 => {
__reduce240(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
241 => {
__reduce241(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
242 => {
__reduce242(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
243 => {
__reduce243(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
244 => {
__reduce244(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
245 => {
__reduce245(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
246 => {
__reduce246(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
247 => {
__reduce247(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
248 => {
__reduce248(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
249 => {
__reduce249(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
250 => {
__reduce250(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
251 => {
__reduce251(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
252 => {
__reduce252(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
253 => {
__reduce253(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
254 => {
__reduce254(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
255 => {
__reduce255(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
256 => {
__reduce256(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
257 => {
__reduce257(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
258 => {
__reduce258(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
259 => {
__reduce259(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
260 => {
__reduce260(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
261 => {
__reduce261(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
262 => {
__reduce262(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
263 => {
__reduce263(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
264 => {
__reduce264(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
265 => {
__reduce265(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
266 => {
__reduce266(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
267 => {
__reduce267(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
268 => {
__reduce268(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
269 => {
__reduce269(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
270 => {
__reduce270(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
271 => {
__reduce271(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
272 => {
__reduce272(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
273 => {
__reduce273(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
274 => {
__reduce274(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
275 => {
__reduce275(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
276 => {
__reduce276(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
277 => {
__reduce277(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
278 => {
__reduce278(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
279 => {
__reduce279(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
280 => {
__reduce280(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
281 => {
__reduce281(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
282 => {
__reduce282(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
283 => {
__reduce283(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
284 => {
__reduce284(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
285 => {
__reduce285(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
286 => {
__reduce286(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
287 => {
__reduce287(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
288 => {
__reduce288(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
289 => {
__reduce289(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
290 => {
__reduce290(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
291 => {
__reduce291(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
292 => {
__reduce292(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
293 => {
__reduce293(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
294 => {
__reduce294(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
295 => {
__reduce295(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
296 => {
__reduce296(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
297 => {
__reduce297(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
298 => {
__reduce298(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
299 => {
__reduce299(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
300 => {
__reduce300(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
301 => {
__reduce301(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
302 => {
__reduce302(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
303 => {
__reduce303(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
304 => {
__reduce304(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
305 => {
__reduce305(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
306 => {
__reduce306(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
307 => {
__reduce307(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
308 => {
__reduce308(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
309 => {
__reduce309(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
310 => {
__reduce310(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
311 => {
__reduce311(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
312 => {
__reduce312(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
313 => {
__reduce313(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
314 => {
__reduce314(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
315 => {
__reduce315(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
316 => {
__reduce316(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
317 => {
__reduce317(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
318 => {
__reduce318(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
319 => {
__reduce319(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
320 => {
__reduce320(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
321 => {
__reduce321(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
322 => {
__reduce322(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
323 => {
__reduce323(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
324 => {
__reduce324(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
325 => {
__reduce325(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
326 => {
__reduce326(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
327 => {
__reduce327(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
328 => {
__reduce328(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
329 => {
__reduce329(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
330 => {
__reduce330(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
331 => {
__reduce331(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
332 => {
__reduce332(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
333 => {
__reduce333(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
334 => {
__reduce334(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
335 => {
__reduce335(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
336 => {
__reduce336(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
337 => {
__reduce337(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
338 => {
__reduce338(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
339 => {
__reduce339(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
340 => {
__reduce340(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
341 => {
__reduce341(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
342 => {
__reduce342(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
343 => {
__reduce343(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
344 => {
__reduce344(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
345 => {
__reduce345(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
346 => {
__reduce346(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
347 => {
__reduce347(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
348 => {
__reduce348(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
349 => {
__reduce349(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
350 => {
__reduce350(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
351 => {
__reduce351(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
352 => {
__reduce352(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
353 => {
__reduce353(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
354 => {
__reduce354(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
355 => {
__reduce355(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
356 => {
__reduce356(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
357 => {
__reduce357(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
358 => {
__reduce358(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
359 => {
__reduce359(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
360 => {
__reduce360(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
361 => {
__reduce361(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
362 => {
__reduce362(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
363 => {
__reduce363(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
364 => {
__reduce364(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
365 => {
__reduce365(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
366 => {
__reduce366(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
367 => {
__reduce367(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
368 => {
__reduce368(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
369 => {
__reduce369(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
370 => {
__reduce370(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
371 => {
__reduce371(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
372 => {
__reduce372(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
373 => {
__reduce373(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
374 => {
__reduce374(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
375 => {
__reduce375(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
376 => {
__reduce376(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
377 => {
__reduce377(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
378 => {
__reduce378(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
379 => {
__reduce379(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
380 => {
__reduce380(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
381 => {
__reduce381(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
382 => {
__reduce382(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
383 => {
__reduce383(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
384 => {
__reduce384(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
385 => {
__reduce385(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
386 => {
__reduce386(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
387 => {
__reduce387(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
388 => {
__reduce388(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
389 => {
__reduce389(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
390 => {
__reduce390(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
391 => {
__reduce391(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
392 => {
__reduce392(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
393 => {
__reduce393(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
394 => {
__reduce394(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
395 => {
__reduce395(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
396 => {
__reduce396(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
397 => {
__reduce397(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
398 => {
__reduce398(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
399 => {
__reduce399(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
400 => {
__reduce400(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
401 => {
__reduce401(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
402 => {
__reduce402(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
403 => {
__reduce403(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
404 => {
__reduce404(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
405 => {
__reduce405(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
406 => {
__reduce406(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
407 => {
__reduce407(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
408 => {
__reduce408(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
409 => {
__reduce409(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
410 => {
__reduce410(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
411 => {
__reduce411(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
412 => {
__reduce412(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
413 => {
__reduce413(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
414 => {
__reduce414(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
415 => {
__reduce415(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
416 => {
__reduce416(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
417 => {
__reduce417(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
418 => {
__reduce418(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
419 => {
__reduce419(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
420 => {
__reduce420(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
421 => {
__reduce421(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
422 => {
__reduce422(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
423 => {
__reduce423(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
424 => {
__reduce424(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
425 => {
__reduce425(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
426 => {
__reduce426(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
427 => {
__reduce427(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
428 => {
__reduce428(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
429 => {
__reduce429(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
430 => {
__reduce430(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
431 => {
__reduce431(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
432 => {
__reduce432(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
433 => {
__reduce433(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
434 => {
__reduce434(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
435 => {
__reduce435(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
436 => {
__reduce436(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
437 => {
__reduce437(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
438 => {
__reduce438(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
439 => {
__reduce439(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
440 => {
__reduce440(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
441 => {
__reduce441(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
442 => {
__reduce442(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
443 => {
__reduce443(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
444 => {
__reduce444(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
445 => {
__reduce445(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
446 => {
__reduce446(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
447 => {
__reduce447(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
448 => {
__reduce448(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
449 => {
__reduce449(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
450 => {
__reduce450(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
451 => {
__reduce451(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
452 => {
__reduce452(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
453 => {
__reduce453(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
454 => {
__reduce454(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
455 => {
__reduce455(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
456 => {
__reduce456(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
457 => {
__reduce457(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
458 => {
__reduce458(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
459 => {
__reduce459(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
460 => {
__reduce460(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
461 => {
__reduce461(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
462 => {
__reduce462(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
463 => {
__reduce463(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
464 => {
__reduce464(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
465 => {
__reduce465(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
466 => {
__reduce466(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
467 => {
__reduce467(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
468 => {
__reduce468(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
469 => {
__reduce469(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
470 => {
__reduce470(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
471 => {
__reduce471(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
472 => {
__reduce472(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
473 => {
__reduce473(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
474 => {
__reduce474(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
475 => {
__reduce475(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
476 => {
__reduce476(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
477 => {
__reduce477(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
478 => {
__reduce478(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
479 => {
__reduce479(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
480 => {
__reduce480(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
481 => {
__reduce481(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
482 => {
__reduce482(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
483 => {
__reduce483(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
484 => {
__reduce484(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
485 => {
__reduce485(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
486 => {
__reduce486(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
487 => {
__reduce487(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
488 => {
__reduce488(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
489 => {
__reduce489(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
490 => {
__reduce490(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
491 => {
__reduce491(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
492 => {
__reduce492(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
493 => {
__reduce493(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
494 => {
__reduce494(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
495 => {
__reduce495(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
496 => {
__reduce496(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
497 => {
__reduce497(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
498 => {
__reduce498(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
499 => {
__reduce499(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
500 => {
__reduce500(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
501 => {
__reduce501(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
502 => {
__reduce502(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
503 => {
__reduce503(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
504 => {
__reduce504(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
505 => {
__reduce505(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
506 => {
__reduce506(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
507 => {
__reduce507(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
508 => {
__reduce508(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
509 => {
__reduce509(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
510 => {
__reduce510(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
511 => {
__reduce511(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
512 => {
__reduce512(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
513 => {
__reduce513(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
514 => {
__reduce514(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
515 => {
__reduce515(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
516 => {
__reduce516(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
517 => {
__reduce517(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
518 => {
__reduce518(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
519 => {
__reduce519(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
520 => {
__reduce520(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
521 => {
__reduce521(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
522 => {
__reduce522(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
523 => {
__reduce523(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
524 => {
__reduce524(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
525 => {
__reduce525(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
526 => {
__reduce526(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
527 => {
__reduce527(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
528 => {
__reduce528(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
529 => {
__reduce529(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
530 => {
__reduce530(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
531 => {
__reduce531(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
532 => {
__reduce532(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
533 => {
__reduce533(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
534 => {
__reduce534(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
535 => {
__reduce535(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
536 => {
__reduce536(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
537 => {
__reduce537(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
538 => {
__reduce538(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
539 => {
__reduce539(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
540 => {
__reduce540(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
541 => {
__reduce541(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
542 => {
__reduce542(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
543 => {
__reduce543(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
544 => {
__reduce544(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
545 => {
__reduce545(ctx, __lookahead_start, __symbols, core::marker::PhantomData::<(&(), L)>)
}
_ => panic!("invalid action code {}", __action)
};
let __states_len = __states.len();
__states.truncate(__states_len - __pop_states);
let __state = *__states.last().unwrap();
let __next_state = __goto(__state, __nonterminal);
__states.push(__next_state);
None
}
#[inline(never)]
fn __symbol_type_mismatch() -> ! {
panic!("symbol type mismatch")
}
fn __pop_Variant22<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, LexerPosition, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant22(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant49<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Option<ast::ExternalDeclaration>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant49(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant0<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Token, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant0(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant37<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant37(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant38<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::Expr>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant38(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant39<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::FunctionParameterDeclaration>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant39(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant40<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::Identifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant40(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant42<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::Initializer>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant42(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant41<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::LayoutQualifierSpec>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant41(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant1<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, Vec<ast::TypeSpecifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant1(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant50<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<Option<ast::ExternalDeclaration>>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant50(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant28<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::ArraySpecifierDimension>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant28(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant4<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant4(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant6<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant6(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant8<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant8(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant10<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant10(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant21<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant21(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant12<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant12(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant14<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant14(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant97<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant97(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant101<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant101(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant110<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant110(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant16<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant16(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant25<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ArraySpecifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant25(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant27<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ArraySpecifierDimension, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant27(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant29<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ArraySpecifierDimensionData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant29(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant3<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ArrayedIdentifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant3(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant32<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::AssignmentOp, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant32(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant33<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::AssignmentOpData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant33(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant34<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Block, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant34(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant35<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::CaseLabel, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant35(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant36<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::CaseLabelData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant36(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant43<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::CompoundStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant43(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant44<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Condition, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant44(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant46<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ConditionData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant46(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant47<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Declaration, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant47(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant74<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::DeclarationData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant74(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant5<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Expr, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant5(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant48<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ExprStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant48(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant51<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ForInitStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant51(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant52<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ForInitStatementData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant52(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant53<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::ForRestStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant53(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant54<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FullySpecifiedType, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant54(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant55<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunIdentifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant55(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant56<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunIdentifierData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant56(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant57<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunctionDefinition, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant57(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant7<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant7(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant59<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant59(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant60<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::FunctionPrototype, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant60(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant9<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Identifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant9(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant62<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::InitDeclaratorList, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant62(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant19<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Initializer, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant19(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant63<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::InitializerData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant63(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant65<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::InterpolationQualifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant65(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant66<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::InterpolationQualifierData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant66(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant67<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::IterationStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant67(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant68<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::JumpStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant68(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant69<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::JumpStatementData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant69(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant70<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::LayoutQualifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant70(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant11<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::LayoutQualifierSpec, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant11(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant72<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::LayoutQualifierSpecData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant72(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant75<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PrecisionQualifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant75(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant76<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PrecisionQualifierData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant76(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant77<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Preprocessor, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant77(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant78<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorDefine, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant78(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant73<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorDefineData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant73(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant79<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorElseIf, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant79(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant80<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorError, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant80(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant81<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorExtension, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant81(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant17<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant17(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant82<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorExtensionBehaviorData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant82(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant83<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorIf, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant83(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant84<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorIfDef, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant84(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant85<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorIfNDef, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant85(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant86<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorInclude, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant86(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant87<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorLine, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant87(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant88<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorPragma, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant88(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant89<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorUndef, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant89(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant90<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorVersion, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant90(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant91<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorVersionProfile, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant91(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant93<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::PreprocessorVersionProfileData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant93(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant94<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::SelectionStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant94(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant95<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::SingleDeclaration, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant95(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant96<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::SingleDeclarationData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant96(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant13<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::SingleDeclarationNoType, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant13(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant23<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::Statement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant23(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant98<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::StorageQualifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant98(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant99<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::StorageQualifierData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant99(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant100<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::StructFieldSpecifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant100(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant102<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::StructSpecifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant102(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant103<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::SwitchStatement, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant103(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant24<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TranslationUnit, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant24(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant107<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeName, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant107(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant108<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeQualifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant108(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant104<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeQualifierSpec, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant104(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant106<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeQualifierSpecData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant106(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant15<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeSpecifier, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant15(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant112<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant112(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant113<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::TypeSpecifierNonArrayData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant113(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant114<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::UnaryOp, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant114(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant115<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, ast::UnaryOpData, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant115(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant64<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<Token>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant64(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant2<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<Vec<ast::TypeSpecifier>>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant2(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant26<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant26(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant30<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant30(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant45<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::Condition>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant45(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant31<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::Expr>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant31(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant58<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::FunctionParameterDeclaration>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant58(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant61<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant61(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant20<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant20(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant71<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::LayoutQualifierSpec>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant71(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant18<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::PreprocessorExtensionBehavior>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant18(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant92<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::PreprocessorVersionProfile>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant92(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant109<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant109(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant105<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::TypeQualifierSpec>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant105(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
fn __pop_Variant111<
>(
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>
) -> (LexerPosition, core::option::Option<ast::TypeSpecifier>, LexerPosition)
{
match __symbols.pop() {
Some((__l, __Symbol::Variant111(__v), __r)) => (__l, __v, __r),
_ => __symbol_type_mismatch()
}
}
pub(crate) fn __reduce0<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action393::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(3, 0)
}
pub(crate) fn __reduce1<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant1(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action497::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant2(__nt), __end));
(3, 1)
}
pub(crate) fn __reduce2<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action392::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant2(__nt), __end));
(0, 1)
}
pub(crate) fn __reduce3<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action444::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(2, 2)
}
pub(crate) fn __reduce4<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action442::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(0, 3)
}
pub(crate) fn __reduce5<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action443::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(1, 3)
}
pub(crate) fn __reduce6<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action500::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(2, 4)
}
pub(crate) fn __reduce7<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant3(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action501::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant4(__nt), __end));
(3, 4)
}
pub(crate) fn __reduce8<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action439::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 5)
}
pub(crate) fn __reduce9<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action437::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(0, 6)
}
pub(crate) fn __reduce10<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action438::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(1, 6)
}
pub(crate) fn __reduce11<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action504::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(2, 7)
}
pub(crate) fn __reduce12<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action505::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant6(__nt), __end));
(3, 7)
}
pub(crate) fn __reduce13<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action473::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(2, 8)
}
pub(crate) fn __reduce14<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action471::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(0, 9)
}
pub(crate) fn __reduce15<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action472::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(1, 9)
}
pub(crate) fn __reduce16<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant7(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action508::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(2, 10)
}
pub(crate) fn __reduce17<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant7(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action509::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant8(__nt), __end));
(3, 10)
}
pub(crate) fn __reduce18<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action480::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(2, 11)
}
pub(crate) fn __reduce19<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action478::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(0, 12)
}
pub(crate) fn __reduce20<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action479::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(1, 12)
}
pub(crate) fn __reduce21<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action512::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(2, 13)
}
pub(crate) fn __reduce22<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant9(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action513::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant10(__nt), __end));
(3, 13)
}
pub(crate) fn __reduce23<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant11(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action468::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(2, 14)
}
pub(crate) fn __reduce24<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action466::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(0, 15)
}
pub(crate) fn __reduce25<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action467::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(1, 15)
}
pub(crate) fn __reduce26<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant11(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action516::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(2, 16)
}
pub(crate) fn __reduce27<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant11(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action517::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant12(__nt), __end));
(3, 16)
}
pub(crate) fn __reduce28<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant13(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action385::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(2, 17)
}
pub(crate) fn __reduce29<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action383::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(0, 18)
}
pub(crate) fn __reduce30<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant14(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action384::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(1, 18)
}
pub(crate) fn __reduce31<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant13(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action520::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(2, 19)
}
pub(crate) fn __reduce32<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant13(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant14(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action521::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant14(__nt), __end));
(3, 19)
}
pub(crate) fn __reduce33<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action463::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(2, 20)
}
pub(crate) fn __reduce34<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action461::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(0, 21)
}
pub(crate) fn __reduce35<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action462::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(1, 21)
}
pub(crate) fn __reduce36<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action524::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(2, 22)
}
pub(crate) fn __reduce37<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant15(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action525::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant16(__nt), __end));
(3, 22)
}
pub(crate) fn __reduce38<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant17(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action375::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(2, 23)
}
pub(crate) fn __reduce39<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant17(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action528::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant18(__nt), __end));
(2, 24)
}
pub(crate) fn __reduce40<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action374::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant18(__nt), __end));
(0, 24)
}
pub(crate) fn __reduce41<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant19(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action388::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(2, 25)
}
pub(crate) fn __reduce42<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant19(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action531::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(2, 26)
}
pub(crate) fn __reduce43<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action387::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(0, 26)
}
pub(crate) fn __reduce44<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant19(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action453::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(2, 27)
}
pub(crate) fn __reduce45<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action451::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(0, 28)
}
pub(crate) fn __reduce46<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant21(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action452::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(1, 28)
}
pub(crate) fn __reduce47<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant19(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action536::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(2, 29)
}
pub(crate) fn __reduce48<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant19(__symbols);
let __sym0 = __pop_Variant21(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action537::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant21(__nt), __end));
(3, 29)
}
pub(crate) fn __reduce49<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action436::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant22(__nt), __end));
(0, 30)
}
pub(crate) fn __reduce50<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action435::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant22(__nt), __end));
(0, 31)
}
pub(crate) fn __reduce51<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action368::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 32)
}
pub(crate) fn __reduce52<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action369::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 33)
}
pub(crate) fn __reduce53<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant24(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action370::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 34)
}
pub(crate) fn __reduce55<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action205::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 36)
}
pub(crate) fn __reduce56<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action679::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 36)
}
pub(crate) fn __reduce57<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action680::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 36)
}
pub(crate) fn __reduce58<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action219::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 37)
}
pub(crate) fn __reduce59<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action681::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 37)
}
pub(crate) fn __reduce60<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant28(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action682::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant25(__nt), __end));
(1, 38)
}
pub(crate) fn __reduce61<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant25(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action423::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(1, 39)
}
pub(crate) fn __reduce62<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action424::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant26(__nt), __end));
(0, 39)
}
pub(crate) fn __reduce63<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant29(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action683::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant27(__nt), __end));
(1, 40)
}
pub(crate) fn __reduce64<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant27(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action432::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(1, 41)
}
pub(crate) fn __reduce65<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant27(__symbols);
let __sym0 = __pop_Variant28(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action433::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant28(__nt), __end));
(2, 41)
}
pub(crate) fn __reduce66<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action19::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant29(__nt), __end));
(2, 42)
}
pub(crate) fn __reduce67<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action20::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant29(__nt), __end));
(3, 42)
}
pub(crate) fn __reduce68<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action818::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(2, 43)
}
pub(crate) fn __reduce69<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action819::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant3(__nt), __end));
(1, 43)
}
pub(crate) fn __reduce70<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action381::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant30(__nt), __end));
(1, 44)
}
pub(crate) fn __reduce71<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action382::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant30(__nt), __end));
(0, 44)
}
pub(crate) fn __reduce72<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action233::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 45)
}
pub(crate) fn __reduce73<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant32(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action685::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 45)
}
pub(crate) fn __reduce74<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action440::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant31(__nt), __end));
(1, 46)
}
pub(crate) fn __reduce75<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action441::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant31(__nt), __end));
(0, 46)
}
pub(crate) fn __reduce76<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant33(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action686::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant32(__nt), __end));
(1, 47)
}
pub(crate) fn __reduce77<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action235::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce78<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action236::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce79<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action237::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce80<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action238::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce81<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action239::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce82<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action240::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce83<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action241::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce84<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action242::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce85<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action243::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce86<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action244::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce87<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action245::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant33(__nt), __end));
(1, 48)
}
pub(crate) fn __reduce88<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant3(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action870::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(5, 49)
}
pub(crate) fn __reduce89<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant3(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant101(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym5.2;
let __nt = super::__action871::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(6, 49)
}
pub(crate) fn __reduce90<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action872::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(4, 49)
}
pub(crate) fn __reduce91<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant101(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action873::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant34(__nt), __end));
(5, 49)
}
pub(crate) fn __reduce92<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant36(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action688::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant35(__nt), __end));
(1, 50)
}
pub(crate) fn __reduce93<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action251::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant36(__nt), __end));
(3, 51)
}
pub(crate) fn __reduce94<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action252::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant36(__nt), __end));
(2, 51)
}
pub(crate) fn __reduce95<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action824::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant37(__nt), __end));
(1, 52)
}
pub(crate) fn __reduce96<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action825::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant37(__nt), __end));
(0, 52)
}
pub(crate) fn __reduce97<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant4(__symbols);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action826::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant37(__nt), __end));
(2, 52)
}
pub(crate) fn __reduce98<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant4(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action827::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant37(__nt), __end));
(1, 52)
}
pub(crate) fn __reduce99<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action828::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant38(__nt), __end));
(1, 53)
}
pub(crate) fn __reduce100<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action829::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant38(__nt), __end));
(0, 53)
}
pub(crate) fn __reduce101<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant6(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action830::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant38(__nt), __end));
(2, 53)
}
pub(crate) fn __reduce102<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant6(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action831::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant38(__nt), __end));
(1, 53)
}
pub(crate) fn __reduce103<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action844::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant39(__nt), __end));
(1, 54)
}
pub(crate) fn __reduce104<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action845::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant39(__nt), __end));
(0, 54)
}
pub(crate) fn __reduce105<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant8(__symbols);
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action846::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant39(__nt), __end));
(2, 54)
}
pub(crate) fn __reduce106<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant8(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action847::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant39(__nt), __end));
(1, 54)
}
pub(crate) fn __reduce107<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action848::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant40(__nt), __end));
(1, 55)
}
pub(crate) fn __reduce108<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action849::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant40(__nt), __end));
(0, 55)
}
pub(crate) fn __reduce109<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant10(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action850::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant40(__nt), __end));
(2, 55)
}
pub(crate) fn __reduce110<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant10(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action851::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant40(__nt), __end));
(1, 55)
}
pub(crate) fn __reduce111<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action860::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant41(__nt), __end));
(1, 56)
}
pub(crate) fn __reduce112<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action861::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant41(__nt), __end));
(0, 56)
}
pub(crate) fn __reduce113<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant12(__symbols);
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action862::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant41(__nt), __end));
(2, 56)
}
pub(crate) fn __reduce114<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant12(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action863::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant41(__nt), __end));
(1, 56)
}
pub(crate) fn __reduce115<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action888::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 57)
}
pub(crate) fn __reduce116<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action889::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(0, 57)
}
pub(crate) fn __reduce117<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant16(__symbols);
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action890::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(2, 57)
}
pub(crate) fn __reduce118<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant16(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action891::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant1(__nt), __end));
(1, 57)
}
pub(crate) fn __reduce119<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant19(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action854::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant42(__nt), __end));
(1, 58)
}
pub(crate) fn __reduce120<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action855::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant42(__nt), __end));
(0, 58)
}
pub(crate) fn __reduce121<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant19(__symbols);
let __sym0 = __pop_Variant21(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action856::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant42(__nt), __end));
(2, 58)
}
pub(crate) fn __reduce122<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant21(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action857::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant42(__nt), __end));
(1, 58)
}
pub(crate) fn __reduce123<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action866::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant43(__nt), __end));
(2, 59)
}
pub(crate) fn __reduce124<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant97(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action867::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant43(__nt), __end));
(3, 59)
}
pub(crate) fn __reduce125<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant46(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action690::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant44(__nt), __end));
(1, 60)
}
pub(crate) fn __reduce126<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant44(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action412::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant45(__nt), __end));
(1, 61)
}
pub(crate) fn __reduce127<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action413::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant45(__nt), __end));
(0, 61)
}
pub(crate) fn __reduce128<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action257::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant46(__nt), __end));
(1, 62)
}
pub(crate) fn __reduce129<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant19(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant54(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action258::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant46(__nt), __end));
(4, 62)
}
pub(crate) fn __reduce130<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action231::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 63)
}
pub(crate) fn __reduce131<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant5(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action691::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(5, 63)
}
pub(crate) fn __reduce132<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant60(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action692::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant47(__nt), __end));
(2, 64)
}
pub(crate) fn __reduce133<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant62(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action693::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant47(__nt), __end));
(2, 64)
}
pub(crate) fn __reduce134<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant74(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action694::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant47(__nt), __end));
(2, 64)
}
pub(crate) fn __reduce135<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant34(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action695::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant47(__nt), __end));
(2, 64)
}
pub(crate) fn __reduce136<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action696::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant47(__nt), __end));
(3, 64)
}
pub(crate) fn __reduce137<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action216::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 65)
}
pub(crate) fn __reduce138<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action697::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 65)
}
pub(crate) fn __reduce139<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action698::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 65)
}
pub(crate) fn __reduce140<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action221::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 66)
}
pub(crate) fn __reduce141<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action699::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 66)
}
pub(crate) fn __reduce142<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action247::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 67)
}
pub(crate) fn __reduce143<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action700::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 67)
}
pub(crate) fn __reduce144<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action417::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant31(__nt), __end));
(1, 68)
}
pub(crate) fn __reduce145<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action418::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant31(__nt), __end));
(0, 68)
}
pub(crate) fn __reduce146<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action834::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant48(__nt), __end));
(2, 69)
}
pub(crate) fn __reduce147<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action835::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant48(__nt), __end));
(1, 69)
}
pub(crate) fn __reduce148<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant77(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action702::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant49(__nt), __end));
(1, 70)
}
pub(crate) fn __reduce149<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant57(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action703::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant49(__nt), __end));
(1, 70)
}
pub(crate) fn __reduce150<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant47(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action704::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant49(__nt), __end));
(1, 70)
}
pub(crate) fn __reduce151<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action366::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant49(__nt), __end));
(1, 70)
}
pub(crate) fn __reduce152<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action371::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant50(__nt), __end));
(0, 71)
}
pub(crate) fn __reduce153<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant50(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action372::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant50(__nt), __end));
(1, 71)
}
pub(crate) fn __reduce154<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant49(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action481::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant50(__nt), __end));
(1, 72)
}
pub(crate) fn __reduce155<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant49(__symbols);
let __sym0 = __pop_Variant50(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action482::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant50(__nt), __end));
(2, 72)
}
pub(crate) fn __reduce156<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant52(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action705::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant51(__nt), __end));
(1, 73)
}
pub(crate) fn __reduce157<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant48(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action260::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant52(__nt), __end));
(1, 74)
}
pub(crate) fn __reduce158<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant47(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action261::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant52(__nt), __end));
(1, 74)
}
pub(crate) fn __reduce159<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant44(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action836::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant53(__nt), __end));
(3, 75)
}
pub(crate) fn __reduce160<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant44(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action837::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant53(__nt), __end));
(2, 75)
}
pub(crate) fn __reduce161<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action838::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant53(__nt), __end));
(2, 75)
}
pub(crate) fn __reduce162<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action839::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant53(__nt), __end));
(1, 75)
}
pub(crate) fn __reduce163<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action880::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant54(__nt), __end));
(2, 76)
}
pub(crate) fn __reduce164<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action881::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant54(__nt), __end));
(1, 76)
}
pub(crate) fn __reduce165<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant56(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action708::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant55(__nt), __end));
(1, 77)
}
pub(crate) fn __reduce166<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action188::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant56(__nt), __end));
(1, 78)
}
pub(crate) fn __reduce167<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action189::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant56(__nt), __end));
(1, 78)
}
pub(crate) fn __reduce168<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant38(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant55(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action709::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(4, 79)
}
pub(crate) fn __reduce169<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant55(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action710::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(4, 79)
}
pub(crate) fn __reduce170<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant43(__symbols);
let __sym0 = __pop_Variant60(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action711::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant57(__nt), __end));
(2, 80)
}
pub(crate) fn __reduce171<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action882::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(2, 81)
}
pub(crate) fn __reduce172<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action883::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 81)
}
pub(crate) fn __reduce173<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant59(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action884::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(2, 81)
}
pub(crate) fn __reduce174<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant59(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action885::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant7(__nt), __end));
(1, 81)
}
pub(crate) fn __reduce175<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant7(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action474::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant58(__nt), __end));
(1, 82)
}
pub(crate) fn __reduce176<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action475::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant58(__nt), __end));
(0, 82)
}
pub(crate) fn __reduce177<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action714::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant59(__nt), __end));
(2, 83)
}
pub(crate) fn __reduce178<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant39(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant54(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action715::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant60(__nt), __end));
(5, 84)
}
pub(crate) fn __reduce179<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action716::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant9(__nt), __end));
(1, 85)
}
pub(crate) fn __reduce180<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action427::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant61(__nt), __end));
(1, 86)
}
pub(crate) fn __reduce181<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action428::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant61(__nt), __end));
(0, 86)
}
pub(crate) fn __reduce182<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action223::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 87)
}
pub(crate) fn __reduce183<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action717::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 87)
}
pub(crate) fn __reduce184<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant95(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action718::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant62(__nt), __end));
(1, 88)
}
pub(crate) fn __reduce185<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant14(__symbols);
let __sym0 = __pop_Variant95(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action719::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant62(__nt), __end));
(2, 88)
}
pub(crate) fn __reduce186<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant63(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action720::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant19(__nt), __end));
(1, 89)
}
pub(crate) fn __reduce187<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant19(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action449::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(1, 90)
}
pub(crate) fn __reduce188<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action450::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant20(__nt), __end));
(0, 90)
}
pub(crate) fn __reduce189<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action254::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant63(__nt), __end));
(1, 91)
}
pub(crate) fn __reduce190<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant42(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action255::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant63(__nt), __end));
(3, 91)
}
pub(crate) fn __reduce191<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action378::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant64(__nt), __end));
(1, 92)
}
pub(crate) fn __reduce192<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action379::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant64(__nt), __end));
(0, 92)
}
pub(crate) fn __reduce193<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action16::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 93)
}
pub(crate) fn __reduce194<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant66(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action721::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant65(__nt), __end));
(1, 94)
}
pub(crate) fn __reduce195<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action274::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant66(__nt), __end));
(1, 95)
}
pub(crate) fn __reduce196<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action275::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant66(__nt), __end));
(1, 95)
}
pub(crate) fn __reduce197<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action276::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant66(__nt), __end));
(1, 95)
}
pub(crate) fn __reduce198<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant23(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant44(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action722::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(5, 96)
}
pub(crate) fn __reduce199<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant0(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant5(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant23(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym6.2;
let __nt = super::__action723::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(7, 96)
}
pub(crate) fn __reduce200<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant23(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant53(__symbols);
let __sym2 = __pop_Variant51(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym5.2;
let __nt = super::__action724::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(6, 96)
}
pub(crate) fn __reduce201<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant23(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant44(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action725::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(5, 97)
}
pub(crate) fn __reduce202<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant0(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant5(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant23(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym6.2;
let __nt = super::__action726::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(7, 97)
}
pub(crate) fn __reduce203<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant23(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant53(__symbols);
let __sym2 = __pop_Variant51(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym5.2;
let __nt = super::__action727::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant67(__nt), __end));
(6, 97)
}
pub(crate) fn __reduce204<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant69(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action728::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant68(__nt), __end));
(1, 98)
}
pub(crate) fn __reduce205<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action264::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant69(__nt), __end));
(2, 99)
}
pub(crate) fn __reduce206<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action265::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant69(__nt), __end));
(2, 99)
}
pub(crate) fn __reduce207<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action266::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant69(__nt), __end));
(2, 99)
}
pub(crate) fn __reduce208<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action840::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant69(__nt), __end));
(3, 99)
}
pub(crate) fn __reduce209<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action841::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant69(__nt), __end));
(2, 99)
}
pub(crate) fn __reduce210<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant41(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action729::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant70(__nt), __end));
(4, 100)
}
pub(crate) fn __reduce211<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant72(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action730::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant11(__nt), __end));
(1, 101)
}
pub(crate) fn __reduce212<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant11(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action469::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant71(__nt), __end));
(1, 102)
}
pub(crate) fn __reduce213<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action470::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant71(__nt), __end));
(0, 102)
}
pub(crate) fn __reduce214<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action301::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant72(__nt), __end));
(1, 103)
}
pub(crate) fn __reduce215<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action302::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant72(__nt), __end));
(3, 103)
}
pub(crate) fn __reduce216<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action303::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant72(__nt), __end));
(1, 103)
}
pub(crate) fn __reduce217<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action225::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 104)
}
pub(crate) fn __reduce218<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action731::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 104)
}
pub(crate) fn __reduce219<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action229::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 105)
}
pub(crate) fn __reduce220<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action732::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 105)
}
pub(crate) fn __reduce221<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action227::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 106)
}
pub(crate) fn __reduce222<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action733::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 106)
}
pub(crate) fn __reduce223<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action201::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 107)
}
pub(crate) fn __reduce224<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action734::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 107)
}
pub(crate) fn __reduce225<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action735::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 107)
}
pub(crate) fn __reduce226<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action736::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 107)
}
pub(crate) fn __reduce227<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action10::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 108)
}
pub(crate) fn __reduce228<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action737::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(4, 108)
}
pub(crate) fn __reduce229<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action12::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 108)
}
pub(crate) fn __reduce230<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant9(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action738::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 108)
}
pub(crate) fn __reduce231<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action739::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 108)
}
pub(crate) fn __reduce232<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action740::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 108)
}
pub(crate) fn __reduce233<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant40(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action324::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant73(__nt), __end));
(5, 109)
}
pub(crate) fn __reduce234<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action323::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant73(__nt), __end));
(2, 110)
}
pub(crate) fn __reduce235<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant15(__symbols);
let __sym1 = __pop_Variant75(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action306::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant74(__nt), __end));
(3, 111)
}
pub(crate) fn __reduce236<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant76(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action741::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant75(__nt), __end));
(1, 112)
}
pub(crate) fn __reduce237<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action278::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant76(__nt), __end));
(1, 113)
}
pub(crate) fn __reduce238<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action279::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant76(__nt), __end));
(1, 113)
}
pub(crate) fn __reduce239<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action280::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant76(__nt), __end));
(1, 113)
}
pub(crate) fn __reduce240<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant78(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action742::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce241<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action743::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(1, 114)
}
pub(crate) fn __reduce242<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant79(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action744::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce243<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action745::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(1, 114)
}
pub(crate) fn __reduce244<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant80(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action746::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce245<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant83(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action747::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce246<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant84(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action748::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce247<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant85(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action749::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce248<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant86(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action750::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce249<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant87(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action751::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce250<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant88(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action752::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce251<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant89(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action753::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce252<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant90(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action754::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce253<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant81(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action755::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant77(__nt), __end));
(2, 114)
}
pub(crate) fn __reduce254<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant73(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action756::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant78(__nt), __end));
(1, 115)
}
pub(crate) fn __reduce255<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant73(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action325::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant73(__nt), __end));
(1, 116)
}
pub(crate) fn __reduce256<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant73(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action326::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant73(__nt), __end));
(1, 116)
}
pub(crate) fn __reduce257<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action757::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant79(__nt), __end));
(1, 117)
}
pub(crate) fn __reduce258<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action758::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant80(__nt), __end));
(1, 118)
}
pub(crate) fn __reduce259<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant17(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action759::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant81(__nt), __end));
(3, 119)
}
pub(crate) fn __reduce260<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action760::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant81(__nt), __end));
(1, 119)
}
pub(crate) fn __reduce261<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant82(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action761::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant17(__nt), __end));
(1, 120)
}
pub(crate) fn __reduce262<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action343::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant82(__nt), __end));
(1, 121)
}
pub(crate) fn __reduce263<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action344::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant82(__nt), __end));
(1, 121)
}
pub(crate) fn __reduce264<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action345::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant82(__nt), __end));
(1, 121)
}
pub(crate) fn __reduce265<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action346::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant82(__nt), __end));
(1, 121)
}
pub(crate) fn __reduce266<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action762::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant83(__nt), __end));
(1, 122)
}
pub(crate) fn __reduce267<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action763::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant84(__nt), __end));
(1, 123)
}
pub(crate) fn __reduce268<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action764::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant85(__nt), __end));
(1, 124)
}
pub(crate) fn __reduce269<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action765::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant86(__nt), __end));
(1, 125)
}
pub(crate) fn __reduce270<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action766::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant86(__nt), __end));
(1, 125)
}
pub(crate) fn __reduce271<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action858::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant87(__nt), __end));
(2, 126)
}
pub(crate) fn __reduce272<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action859::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant87(__nt), __end));
(1, 126)
}
pub(crate) fn __reduce273<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action768::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant88(__nt), __end));
(1, 127)
}
pub(crate) fn __reduce274<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action769::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant89(__nt), __end));
(1, 128)
}
pub(crate) fn __reduce275<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant91(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action864::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant90(__nt), __end));
(2, 129)
}
pub(crate) fn __reduce276<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action865::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant90(__nt), __end));
(1, 129)
}
pub(crate) fn __reduce277<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant93(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action771::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant91(__nt), __end));
(1, 130)
}
pub(crate) fn __reduce278<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant91(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action376::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant92(__nt), __end));
(1, 131)
}
pub(crate) fn __reduce279<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action377::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant92(__nt), __end));
(0, 131)
}
pub(crate) fn __reduce280<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action338::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant93(__nt), __end));
(1, 132)
}
pub(crate) fn __reduce281<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action339::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant93(__nt), __end));
(1, 132)
}
pub(crate) fn __reduce282<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action340::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant93(__nt), __end));
(1, 132)
}
pub(crate) fn __reduce283<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant9(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action772::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce284<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action773::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce285<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action774::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce286<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action775::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce287<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action776::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce288<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action777::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 133)
}
pub(crate) fn __reduce289<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action9::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 133)
}
pub(crate) fn __reduce290<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action211::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 134)
}
pub(crate) fn __reduce291<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action778::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 134)
}
pub(crate) fn __reduce292<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action779::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 134)
}
pub(crate) fn __reduce293<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action780::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 134)
}
pub(crate) fn __reduce294<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action781::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 134)
}
pub(crate) fn __reduce295<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant23(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action782::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant94(__nt), __end));
(5, 135)
}
pub(crate) fn __reduce296<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant94(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action411::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant94(__nt), __end));
(1, 135)
}
pub(crate) fn __reduce297<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant23(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant23(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym6.2;
let __nt = super::__action783::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant94(__nt), __end));
(7, 136)
}
pub(crate) fn __reduce298<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant23(__symbols);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant23(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym6.2;
let __nt = super::__action784::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant94(__nt), __end));
(7, 137)
}
pub(crate) fn __reduce299<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action208::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 138)
}
pub(crate) fn __reduce300<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action785::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 138)
}
pub(crate) fn __reduce301<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action786::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(3, 138)
}
pub(crate) fn __reduce302<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant68(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action787::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce303<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant67(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action788::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce304<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant35(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action789::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce305<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant103(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action790::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce306<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant94(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action791::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce307<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant47(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action792::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce308<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant48(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action793::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 139)
}
pub(crate) fn __reduce309<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant68(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action794::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce310<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant67(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action795::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce311<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant35(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action796::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce312<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant103(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action797::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce313<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant94(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action798::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce314<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant47(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action799::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce315<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant48(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action800::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 140)
}
pub(crate) fn __reduce316<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant96(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action801::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant95(__nt), __end));
(1, 141)
}
pub(crate) fn __reduce317<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant19(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant54(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action532::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant96(__nt), __end));
(4, 142)
}
pub(crate) fn __reduce318<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant3(__symbols);
let __sym0 = __pop_Variant54(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action533::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant96(__nt), __end));
(2, 142)
}
pub(crate) fn __reduce319<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant54(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action312::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant96(__nt), __end));
(1, 142)
}
pub(crate) fn __reduce320<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant19(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action802::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(3, 143)
}
pub(crate) fn __reduce321<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant3(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action803::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant13(__nt), __end));
(1, 143)
}
pub(crate) fn __reduce322<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant43(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action270::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 144)
}
pub(crate) fn __reduce323<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action271::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 144)
}
pub(crate) fn __reduce324<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action415::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant97(__nt), __end));
(0, 145)
}
pub(crate) fn __reduce325<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant97(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action416::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant97(__nt), __end));
(1, 145)
}
pub(crate) fn __reduce326<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action447::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant97(__nt), __end));
(1, 146)
}
pub(crate) fn __reduce327<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant23(__symbols);
let __sym0 = __pop_Variant97(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action448::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant97(__nt), __end));
(2, 146)
}
pub(crate) fn __reduce328<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant43(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action272::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 147)
}
pub(crate) fn __reduce329<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant23(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action273::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant23(__nt), __end));
(1, 147)
}
pub(crate) fn __reduce330<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant99(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action804::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant98(__nt), __end));
(1, 148)
}
pub(crate) fn __reduce331<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action282::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce332<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action283::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce333<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action284::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce334<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action285::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce335<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action286::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce336<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action287::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce337<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action288::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce338<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action289::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce339<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action290::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce340<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action291::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce341<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action292::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce342<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action293::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce343<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action294::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce344<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action295::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce345<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action296::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce346<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action297::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce347<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action298::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce348<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant1(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action498::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(4, 149)
}
pub(crate) fn __reduce349<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action499::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant99(__nt), __end));
(1, 149)
}
pub(crate) fn __reduce350<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant37(__symbols);
let __sym1 = __pop_Variant15(__symbols);
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action886::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant100(__nt), __end));
(4, 150)
}
pub(crate) fn __reduce351<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant37(__symbols);
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action887::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant100(__nt), __end));
(3, 150)
}
pub(crate) fn __reduce352<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action425::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant101(__nt), __end));
(0, 151)
}
pub(crate) fn __reduce353<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant101(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action426::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant101(__nt), __end));
(1, 151)
}
pub(crate) fn __reduce354<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant100(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action445::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant101(__nt), __end));
(1, 152)
}
pub(crate) fn __reduce355<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant100(__symbols);
let __sym0 = __pop_Variant101(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action446::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant101(__nt), __end));
(2, 152)
}
pub(crate) fn __reduce356<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action874::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant102(__nt), __end));
(4, 153)
}
pub(crate) fn __reduce357<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 5);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant101(__symbols);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant9(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym4.2;
let __nt = super::__action875::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4);
__symbols.push((__start, __Symbol::Variant102(__nt), __end));
(5, 153)
}
pub(crate) fn __reduce358<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 3);
let __sym2 = __pop_Variant0(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym2.2;
let __nt = super::__action876::<L>(ctx, __sym0, __sym1, __sym2);
__symbols.push((__start, __Symbol::Variant102(__nt), __end));
(3, 153)
}
pub(crate) fn __reduce359<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 4);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant101(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym3.2;
let __nt = super::__action877::<L>(ctx, __sym0, __sym1, __sym2, __sym3);
__symbols.push((__start, __Symbol::Variant102(__nt), __end));
(4, 153)
}
pub(crate) fn __reduce360<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 6);
let __sym5 = __pop_Variant0(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym5.2;
let __nt = super::__action868::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
__symbols.push((__start, __Symbol::Variant103(__nt), __end));
(6, 154)
}
pub(crate) fn __reduce361<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 7);
let __sym6 = __pop_Variant0(__symbols);
let __sym5 = __pop_Variant97(__symbols);
let __sym4 = __pop_Variant0(__symbols);
let __sym3 = __pop_Variant0(__symbols);
let __sym2 = __pop_Variant5(__symbols);
let __sym1 = __pop_Variant0(__symbols);
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym6.2;
let __nt = super::__action869::<L>(ctx, __sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6);
__symbols.push((__start, __Symbol::Variant103(__nt), __end));
(7, 154)
}
pub(crate) fn __reduce362<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant106(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action808::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant104(__nt), __end));
(1, 155)
}
pub(crate) fn __reduce363<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant104(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action421::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant105(__nt), __end));
(1, 156)
}
pub(crate) fn __reduce364<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action422::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant105(__nt), __end));
(0, 156)
}
pub(crate) fn __reduce365<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action184::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 157)
}
pub(crate) fn __reduce366<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action842::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(0, 158)
}
pub(crate) fn __reduce367<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant50(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action843::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant24(__nt), __end));
(1, 158)
}
pub(crate) fn __reduce368<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action809::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant107(__nt), __end));
(1, 159)
}
pub(crate) fn __reduce369<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant110(__symbols);
let __sym0 = __pop_Variant104(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action878::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant108(__nt), __end));
(2, 160)
}
pub(crate) fn __reduce370<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant110(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action879::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant108(__nt), __end));
(1, 160)
}
pub(crate) fn __reduce371<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant108(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action430::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant109(__nt), __end));
(1, 161)
}
pub(crate) fn __reduce372<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action431::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant109(__nt), __end));
(0, 161)
}
pub(crate) fn __reduce373<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant106(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action811::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant104(__nt), __end));
(1, 162)
}
pub(crate) fn __reduce374<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant104(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action419::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant110(__nt), __end));
(1, 163)
}
pub(crate) fn __reduce375<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant104(__symbols);
let __sym0 = __pop_Variant110(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action420::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant110(__nt), __end));
(2, 163)
}
pub(crate) fn __reduce376<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant98(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action178::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 164)
}
pub(crate) fn __reduce377<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant70(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action179::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 164)
}
pub(crate) fn __reduce378<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant75(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action180::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 164)
}
pub(crate) fn __reduce379<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant65(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action181::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 164)
}
pub(crate) fn __reduce380<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action182::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant106(__nt), __end));
(1, 164)
}
pub(crate) fn __reduce381<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant25(__symbols);
let __sym0 = __pop_Variant112(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action820::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(2, 165)
}
pub(crate) fn __reduce382<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant112(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action821::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant15(__nt), __end));
(1, 165)
}
pub(crate) fn __reduce383<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant15(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action464::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant111(__nt), __end));
(1, 166)
}
pub(crate) fn __reduce384<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __start = __lookahead_start.cloned().or_else(|| __symbols.last().map(|s| s.2.clone())).unwrap_or_default();
let __end = __start.clone();
let __nt = super::__action465::<L>(ctx, &__start, &__end);
__symbols.push((__start, __Symbol::Variant111(__nt), __end));
(0, 166)
}
pub(crate) fn __reduce385<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant113(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action813::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant112(__nt), __end));
(1, 167)
}
pub(crate) fn __reduce386<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant102(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action814::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant112(__nt), __end));
(1, 167)
}
pub(crate) fn __reduce387<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant107(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action815::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant112(__nt), __end));
(1, 167)
}
pub(crate) fn __reduce388<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action25::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce389<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action26::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce390<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action27::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce391<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action28::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce392<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action29::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce393<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action30::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce394<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action31::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce395<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action32::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce396<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action33::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce397<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action34::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce398<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action35::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce399<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action36::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce400<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action37::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce401<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action38::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce402<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action39::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce403<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action40::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce404<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action41::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce405<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action42::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce406<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action43::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce407<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action44::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce408<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action45::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce409<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action46::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce410<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action47::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce411<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action48::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce412<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action49::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce413<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action50::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce414<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action51::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce415<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action52::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce416<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action53::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce417<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action54::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce418<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action55::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce419<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action56::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce420<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action57::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce421<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action58::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce422<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action59::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce423<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action60::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce424<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action61::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce425<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action62::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce426<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action63::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce427<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action64::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce428<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action65::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce429<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action66::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce430<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action67::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce431<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action68::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce432<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action69::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce433<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action70::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce434<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action71::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce435<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action72::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce436<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action73::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce437<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action74::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce438<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action75::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce439<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action76::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce440<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action77::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce441<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action78::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce442<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action79::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce443<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action80::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce444<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action81::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce445<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action82::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce446<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action83::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce447<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action84::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce448<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action85::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce449<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action86::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce450<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action87::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce451<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action88::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce452<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action89::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce453<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action90::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce454<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action91::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce455<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action92::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce456<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action93::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce457<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action94::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce458<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action95::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce459<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action96::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce460<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action97::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce461<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action98::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce462<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action99::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce463<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action100::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce464<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action101::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce465<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action102::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce466<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action103::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce467<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action104::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce468<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action105::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce469<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action106::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce470<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action107::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce471<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action108::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce472<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action109::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce473<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action110::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce474<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action111::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce475<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action112::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce476<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action113::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce477<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action114::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce478<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action115::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce479<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action116::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce480<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action117::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce481<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action118::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce482<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action119::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce483<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action120::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce484<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action121::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce485<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action122::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce486<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action123::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce487<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action124::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce488<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action125::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce489<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action126::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce490<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action127::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce491<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action128::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce492<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action129::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce493<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action130::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce494<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action131::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce495<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action132::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce496<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action133::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce497<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action134::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce498<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action135::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce499<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action136::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce500<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action137::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce501<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action138::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce502<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action139::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce503<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action140::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce504<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action141::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce505<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action142::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce506<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action143::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce507<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action144::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce508<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action145::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce509<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action146::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce510<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action147::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce511<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action148::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce512<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action149::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce513<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action150::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce514<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action151::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce515<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action152::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce516<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action153::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce517<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action154::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce518<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action155::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce519<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action156::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce520<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action157::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce521<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action158::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce522<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action159::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce523<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action160::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce524<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action161::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce525<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action162::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce526<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action163::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce527<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action164::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce528<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action165::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce529<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action166::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce530<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action167::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce531<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action168::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce532<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action169::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce533<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action170::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce534<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action171::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce535<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action172::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce536<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action173::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant113(__nt), __end));
(1, 168)
}
pub(crate) fn __reduce537<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant5(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action191::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(1, 169)
}
pub(crate) fn __reduce538<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
assert!(__symbols.len() >= 2);
let __sym1 = __pop_Variant5(__symbols);
let __sym0 = __pop_Variant114(__symbols);
let __start = __sym0.0;
let __end = __sym1.2;
let __nt = super::__action816::<L>(ctx, __sym0, __sym1);
__symbols.push((__start, __Symbol::Variant5(__nt), __end));
(2, 169)
}
pub(crate) fn __reduce539<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant115(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action817::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant114(__nt), __end));
(1, 170)
}
pub(crate) fn __reduce540<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action193::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
pub(crate) fn __reduce541<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action194::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
pub(crate) fn __reduce542<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action195::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
pub(crate) fn __reduce543<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action196::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
pub(crate) fn __reduce544<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action197::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
pub(crate) fn __reduce545<
'i,
L,
>(
ctx: &ParseContext,
__lookahead_start: Option<&LexerPosition>,
__symbols: &mut alloc::vec::Vec<(LexerPosition,__Symbol<>,LexerPosition)>,
_: core::marker::PhantomData<(&'i (), L)>,
) -> (usize, usize)
where
L: HasLexerError,
{
let __sym0 = __pop_Variant0(__symbols);
let __start = __sym0.0;
let __end = __sym0.2;
let __nt = super::__action198::<L>(ctx, __sym0);
__symbols.push((__start, __Symbol::Variant115(__nt), __end));
(1, 171)
}
}
pub use self::__parse__TranslationUnit::TranslationUnitParser;
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action0<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TranslationUnit, LexerPosition),
) -> ast::TranslationUnit
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action1<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Identifier
where
L: HasLexerError,
{
ast::IdentifierData::from(i.as_str()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action2<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeName
where
L: HasLexerError,
{
ast::TypeNameData::from(i.as_str()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action3<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Variable(e).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action4<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::DoubleConst(e.into()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action5<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::FloatConst(e.into()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action6<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::UIntConst(e.into()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action7<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::IntConst(e.into()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action8<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::BoolConst(e.into()).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action9<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action10<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action11<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Bracket(Box::new(l), Box::new(e)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action12<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action13<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Dot(Box::new(l), r).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action14<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::PostInc(Box::new(e)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action15<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::PostDec(Box::new(e)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action16<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action17<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::FunIdentifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, Vec<ast::Expr>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::FunCall(i, e).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action18<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::FunIdentifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::FunCall(i, vec![]).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action19<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
(_, __1, _): (LexerPosition, Token, LexerPosition),
) -> ast::ArraySpecifierDimensionData
where
L: HasLexerError,
{
ast::ArraySpecifierDimensionData::Unsized
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action20<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::ArraySpecifierDimensionData
where
L: HasLexerError,
{
ast::ArraySpecifierDimensionData::ExplicitlySized(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action21<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, a, _): (LexerPosition, ast::ArraySpecifierDimensionData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArraySpecifierDimension
where
L: HasLexerError,
{
a.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action22<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, a, _): (LexerPosition, alloc::vec::Vec<ast::ArraySpecifierDimension>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArraySpecifier
where
L: HasLexerError,
{
ast::ArraySpecifierData {
dimensions: a,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action23<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q, _): (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
(_, f, _): (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StructFieldSpecifier
where
L: HasLexerError,
{
ast::StructFieldSpecifierData {
qualifier: q,
ty: s,
identifiers: f,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action24<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, i, _): (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
ast::StructSpecifierData {
name: i.map(|ident| ctx.add_type_name(ident)),
fields: s,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action25<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Void
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action26<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Bool
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action27<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Int
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action28<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UInt
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action29<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Float
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action30<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Double
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action31<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Vec2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action32<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Vec3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action33<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Vec4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action34<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DVec2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action35<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DVec3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action36<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DVec4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action37<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::BVec2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action38<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::BVec3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action39<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::BVec4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action40<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IVec2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action41<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IVec3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action42<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IVec4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action43<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UVec2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action44<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UVec3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action45<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UVec4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action46<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action47<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action48<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action49<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat22
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action50<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat23
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action51<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat24
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action52<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat32
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action53<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat33
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action54<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat34
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action55<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat42
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action56<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat43
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action57<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Mat44
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action58<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat2
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action59<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat3
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action60<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat4
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action61<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat22
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action62<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat23
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action63<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat24
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action64<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat32
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action65<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat33
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action66<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat34
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action67<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat42
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action68<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat43
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action69<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::DMat44
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action70<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action71<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action72<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action73<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action74<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action75<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action76<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action77<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ImageCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action78<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action79<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action80<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action81<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action82<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action83<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action84<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action85<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ImageBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action86<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action87<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action88<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action89<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Image2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action90<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action91<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ImageCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action92<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler1DShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action93<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action94<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DRectShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action95<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler1DArrayShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action96<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler2DArrayShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action97<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerCubeShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action98<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerCubeArrayShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action99<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action100<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action101<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action102<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action103<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action104<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action105<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISamplerCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action106<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImageCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action107<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action108<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action109<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action110<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action111<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action112<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action113<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISamplerBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action114<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImageBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action115<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action116<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action117<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISampler2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action118<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImage2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action119<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISamplerCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action120<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::IImageCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action121<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::AtomicUInt
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action122<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action123<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action124<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action125<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action126<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action127<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action128<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USamplerCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action129<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImageCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action130<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action131<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action132<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action133<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action134<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action135<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action136<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USamplerBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action137<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImageBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action138<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action139<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action140<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USampler2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action141<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImage2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action142<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USamplerCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action143<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::UImageCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action144<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action145<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action146<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action147<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::TextureCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action148<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action149<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action150<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action151<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::TextureBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action152<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action153<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Texture2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action154<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::TextureCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action155<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture1D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action156<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture2D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action157<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture3D
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action158<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITextureCube
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action159<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture2DRect
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action160<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture1DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action161<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture2DArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action162<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITextureBuffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action163<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture2DMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action164<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITexture2DMsArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action165<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ITextureCubeArray
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action166<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Sampler
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action167<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SamplerShadow
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action168<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SubpassInput
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action169<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISubpassInput
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action170<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USubpassInput
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action171<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::SubpassInputMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action172<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::ISubpassInputMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action173<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeSpecifierNonArrayData
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::USubpassInputMs
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action174<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, t, _): (LexerPosition, ast::TypeSpecifierNonArrayData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
t.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action175<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::StructSpecifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::Struct(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action176<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, t, _): (LexerPosition, ast::TypeName, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
ast::TypeSpecifierNonArrayData::TypeName(t).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action177<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, t, _): (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition),
(_, a, _): (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
ast::TypeSpecifierData { ty: t, array_specifier: a }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action178<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::StorageQualifier, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Storage(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action179<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::LayoutQualifier, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Layout(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action180<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::PrecisionQualifier, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Precision(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action181<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::InterpolationQualifier, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Interpolation(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action182<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Precise
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action183<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
s.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action184<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::TypeQualifierSpecData
where
L: HasLexerError,
{
ast::TypeQualifierSpecData::Invariant
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action185<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
s.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action186<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q1, _): (LexerPosition, core::option::Option<ast::TypeQualifierSpec>, LexerPosition),
(_, q2, _): (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifier
where
L: HasLexerError,
{
ast::TypeQualifierData {
qualifiers: q1.into_iter().chain(q2.into_iter()).collect()
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action187<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q, _): (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FullySpecifiedType
where
L: HasLexerError,
{
ast::FullySpecifiedTypeData { qualifier: q, ty: s }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action188<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FunIdentifierData
where
L: HasLexerError,
{
ast::FunIdentifierData::TypeSpecifier(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action189<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::FunIdentifierData
where
L: HasLexerError,
{
ast::FunIdentifierData::Expr(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action190<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::FunIdentifierData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunIdentifier
where
L: HasLexerError,
{
i.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action191<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action192<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, o, _): (LexerPosition, ast::UnaryOp, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Unary(o, Box::new(e)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action193<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Add
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action194<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Minus
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action195<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Not
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action196<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Complement
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action197<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Inc
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action198<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::UnaryOpData
where
L: HasLexerError,
{
ast::UnaryOpData::Dec
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action199<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, u, _): (LexerPosition, ast::UnaryOpData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::UnaryOp
where
L: HasLexerError,
{
u.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action200<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, a, _): (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
ast::ArrayedIdentifierData { ident: i, array_spec: a }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action201<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action202<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Mult.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action203<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Div.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action204<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Mod.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action205<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action206<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Add.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action207<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Sub.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action208<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action209<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::LShift.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action210<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::RShift.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action211<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action212<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Lt.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action213<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Gt.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action214<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Lte.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action215<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Gte.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action216<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action217<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Equal.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action218<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::NonEqual.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action219<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action220<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::BitAnd.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action221<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action222<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::BitXor.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action223<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action224<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::BitOr.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action225<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action226<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::And.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action227<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action228<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Xor.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action229<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action230<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Binary(ast::BinaryOpData::Or.spanned(c, d), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action231<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action232<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, c, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Ternary(Box::new(c), Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action233<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action234<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, o, _): (LexerPosition, ast::AssignmentOp, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Assignment(Box::new(l), o, Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action235<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Equal
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action236<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Mult
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action237<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Div
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action238<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Mod
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action239<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Add
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action240<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Sub
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action241<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::LShift
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action242<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::RShift
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action243<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::And
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action244<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Xor
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action245<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::AssignmentOpData
where
L: HasLexerError,
{
ast::AssignmentOpData::Or
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action246<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, o, _): (LexerPosition, ast::AssignmentOpData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::AssignmentOp
where
L: HasLexerError,
{
o.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action247<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action248<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, l, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, ast::Expr, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
ast::ExprData::Comma(Box::new(l), Box::new(r)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action249<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ExprStatement
where
L: HasLexerError,
{
ast::ExprStatementData(e).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action250<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SwitchStatement
where
L: HasLexerError,
{
ast::SwitchStatementData {
head: Box::new(e),
body: s,
}.spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action251<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::CaseLabelData
where
L: HasLexerError,
{
ast::CaseLabelData::Case(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action252<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
(_, __1, _): (LexerPosition, Token, LexerPosition),
) -> ast::CaseLabelData
where
L: HasLexerError,
{
ast::CaseLabelData::Def
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action253<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, c, _): (LexerPosition, ast::CaseLabelData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::CaseLabel
where
L: HasLexerError,
{
c.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action254<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::InitializerData
where
L: HasLexerError,
{
ast::InitializerData::Simple(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action255<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, Vec<ast::Initializer>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::InitializerData
where
L: HasLexerError,
{
ast::InitializerData::List(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action256<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::InitializerData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Initializer
where
L: HasLexerError,
{
i.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action257<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::ConditionData
where
L: HasLexerError,
{
ast::ConditionData::Expr(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action258<
'i,
L,
>(
ctx: &ParseContext,
(_, t, _): (LexerPosition, ast::FullySpecifiedType, LexerPosition),
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> ast::ConditionData
where
L: HasLexerError,
{
ast::ConditionData::Assignment(Box::new(t), i, e)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action259<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, c, _): (LexerPosition, ast::ConditionData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Condition
where
L: HasLexerError,
{
c.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action260<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::ExprStatement, LexerPosition),
) -> ast::ForInitStatementData
where
L: HasLexerError,
{
ast::ForInitStatementData::Expression(__0.content.0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action261<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Declaration, LexerPosition),
) -> ast::ForInitStatementData
where
L: HasLexerError,
{
ast::ForInitStatementData::Declaration(Box::new(__0))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action262<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, f, _): (LexerPosition, ast::ForInitStatementData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ForInitStatement
where
L: HasLexerError,
{
f.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action263<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, c, _): (LexerPosition, core::option::Option<ast::Condition>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
ast::ForRestStatementData { condition: c, post_expr: e.map(Box::new) }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action264<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
(_, __1, _): (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
ast::JumpStatementData::Continue
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action265<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
(_, __1, _): (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
ast::JumpStatementData::Break
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action266<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
(_, __1, _): (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
ast::JumpStatementData::Discard
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action267<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
ast::JumpStatementData::Return(e.map(Box::new))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action268<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, j, _): (LexerPosition, ast::JumpStatementData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::JumpStatement
where
L: HasLexerError,
{
j.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action269<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::CompoundStatement
where
L: HasLexerError,
{
ast::CompoundStatementData { statement_list: s }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action270<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::CompoundStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
__0.map_spanned(ast::StatementData::Compound)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action271<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Statement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action272<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::CompoundStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
__0.map_spanned(ast::StatementData::Compound)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action273<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Statement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action274<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::InterpolationQualifierData
where
L: HasLexerError,
{
ast::InterpolationQualifierData::Smooth
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action275<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::InterpolationQualifierData
where
L: HasLexerError,
{
ast::InterpolationQualifierData::Flat
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action276<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::InterpolationQualifierData
where
L: HasLexerError,
{
ast::InterpolationQualifierData::NoPerspective
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action277<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::InterpolationQualifierData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InterpolationQualifier
where
L: HasLexerError,
{
i.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action278<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PrecisionQualifierData
where
L: HasLexerError,
{
ast::PrecisionQualifierData::High
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action279<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PrecisionQualifierData
where
L: HasLexerError,
{
ast::PrecisionQualifierData::Medium
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action280<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PrecisionQualifierData
where
L: HasLexerError,
{
ast::PrecisionQualifierData::Low
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action281<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::PrecisionQualifierData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PrecisionQualifier
where
L: HasLexerError,
{
p.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action282<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Const
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action283<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::InOut
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action284<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::In
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action285<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Out
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action286<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Centroid
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action287<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Patch
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action288<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Sample
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action289<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Uniform
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action290<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Buffer
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action291<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Shared
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action292<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Coherent
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action293<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Volatile
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action294<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Restrict
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action295<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::ReadOnly
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action296<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::WriteOnly
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action297<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Attribute
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action298<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Varying
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action299<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, t, _): (LexerPosition, core::option::Option<Vec<ast::TypeSpecifier>>, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
ast::StorageQualifierData::Subroutine(t.unwrap_or_else(|| vec![]))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action300<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::StorageQualifierData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StorageQualifier
where
L: HasLexerError,
{
s.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action301<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::LayoutQualifierSpecData
where
L: HasLexerError,
{
ast::LayoutQualifierSpecData::Shared
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action302<
'i,
L,
>(
ctx: &ParseContext,
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::LayoutQualifierSpecData
where
L: HasLexerError,
{
ast::LayoutQualifierSpecData::Identifier(i, Some(Box::new(c)))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action303<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::LayoutQualifierSpecData
where
L: HasLexerError,
{
ast::LayoutQualifierSpecData::Identifier(__0, None)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action304<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::LayoutQualifierSpecData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::LayoutQualifierSpec
where
L: HasLexerError,
{
s.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action305<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, Vec<ast::LayoutQualifierSpec>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::LayoutQualifier
where
L: HasLexerError,
{
ast::LayoutQualifierData { ids: s }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action306<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, q, _): (LexerPosition, ast::PrecisionQualifier, LexerPosition),
(_, t, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::DeclarationData
where
L: HasLexerError,
{
ast::DeclarationData::Precision(q, t)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action307<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
(_, i, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclarator
where
L: HasLexerError,
{
ast::FunctionParameterDeclaratorData {
ty: s,
ident: i,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action308<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q, _): (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
(_, s, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
ast::FunctionParameterDeclarationData::Unnamed(q, s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action309<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q, _): (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
(_, d, _): (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
ast::FunctionParameterDeclarationData::Named(q, d).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action310<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, rt, _): (LexerPosition, ast::FullySpecifiedType, LexerPosition),
(_, n, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, Vec<ast::FunctionParameterDeclaration>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionPrototype
where
L: HasLexerError,
{
ast::FunctionPrototypeData {
ty: rt,
name: n,
parameters: p,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action311<
'i,
L,
>(
ctx: &ParseContext,
(_, t, _): (LexerPosition, ast::FullySpecifiedType, LexerPosition),
(_, i, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition),
) -> ast::SingleDeclarationData
where
L: HasLexerError,
{
{
let i = i.into_inner();
ast::SingleDeclarationData {
ty: t,
name: Some(i.ident),
array_specifier: i.array_spec,
initializer: e,
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action312<
'i,
L,
>(
ctx: &ParseContext,
(_, t, _): (LexerPosition, ast::FullySpecifiedType, LexerPosition),
) -> ast::SingleDeclarationData
where
L: HasLexerError,
{
ast::SingleDeclarationData {
ty: t,
name: None,
array_specifier: None,
initializer: None,
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action313<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::SingleDeclarationData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclaration
where
L: HasLexerError,
{
s.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action314<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
ast::SingleDeclarationNoTypeData {
ident: i,
initializer: e,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action315<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, h, _): (LexerPosition, ast::SingleDeclaration, LexerPosition),
(_, t, _): (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
ast::InitDeclaratorListData {
head: h,
tail: t,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action316<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, q, _): (LexerPosition, ast::TypeQualifier, LexerPosition),
(_, n, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, f, _): (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, a, _): (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
ast::BlockData { qualifier: q, name: n, fields: f, identifier: a }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action317<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::FunctionPrototype, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
{
ctx.new_identifier(&p.name, IdentifierContext::FunctionPrototype);
ast::DeclarationData::FunctionPrototype(p).spanned(l, r)
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action318<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::InitDeclaratorList, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
ast::DeclarationData::InitDeclaratorList(i).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action319<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::DeclarationData, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
p.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action320<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, b, _): (LexerPosition, ast::Block, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
ast::DeclarationData::Block(b).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action321<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
ast::DeclarationData::Invariant(i).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action322<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::FunctionPrototype, LexerPosition),
(_, s, _): (LexerPosition, ast::CompoundStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionDefinition
where
L: HasLexerError,
{
ast::FunctionDefinitionData {
prototype: p,
statement: s,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action323<
'i,
L,
>(
ctx: &ParseContext,
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, r, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorDefineData
where
L: HasLexerError,
{
ast::PreprocessorDefineData::ObjectLike {
ident: i,
value: r.into(),
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action324<
'i,
L,
>(
ctx: &ParseContext,
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, Vec<ast::Identifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorDefineData
where
L: HasLexerError,
{
ast::PreprocessorDefineData::FunctionLike {
ident: i,
args: p,
value: r.into(),
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action325<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::PreprocessorDefineData, LexerPosition),
) -> ast::PreprocessorDefineData
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action326<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::PreprocessorDefineData, LexerPosition),
) -> ast::PreprocessorDefineData
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action327<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, d, _): (LexerPosition, ast::PreprocessorDefineData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorDefine
where
L: HasLexerError,
{
d.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action328<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorElseIf
where
L: HasLexerError,
{
ast::PreprocessorElseIfData { condition: p.into() }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action329<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorError
where
L: HasLexerError,
{
ast::PreprocessorErrorData { message: p.into() }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action330<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIf
where
L: HasLexerError,
{
ast::PreprocessorIfData { condition: p.into() }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action331<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIfDef
where
L: HasLexerError,
{
ast::PreprocessorIfDefData { ident: i }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action332<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIfNDef
where
L: HasLexerError,
{
ast::PreprocessorIfNDefData { ident: i }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action333<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
ast::PreprocessorIncludeData {
path: ast::PathData::Relative(p.as_str().to_owned()).spanned(l, r)
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action334<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
ast::PreprocessorIncludeData {
path: ast::PathData::Absolute(p.as_str().to_owned()).spanned(l, r)
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action335<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, Token, LexerPosition),
(_, f, _): (LexerPosition, core::option::Option<Token>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorLine
where
L: HasLexerError,
{
ast::PreprocessorLineData {
line: <Token as Into<i32>>::into(i) as u32,
source_string_number: f.map(|n| <Token as Into<i32>>::into(n) as u32),
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action336<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorPragma
where
L: HasLexerError,
{
ast::PreprocessorPragmaData { command: p.into() }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action337<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, n, _): (LexerPosition, ast::Identifier, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorUndef
where
L: HasLexerError,
{
ast::PreprocessorUndefData { name: n }.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action338<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorVersionProfileData
where
L: HasLexerError,
{
ast::PreprocessorVersionProfileData::Core
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action339<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorVersionProfileData
where
L: HasLexerError,
{
ast::PreprocessorVersionProfileData::Compatibility
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action340<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorVersionProfileData
where
L: HasLexerError,
{
ast::PreprocessorVersionProfileData::Es
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action341<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorVersionProfileData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorVersionProfile
where
L: HasLexerError,
{
p.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action342<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, v, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, core::option::Option<ast::PreprocessorVersionProfile>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorVersion
where
L: HasLexerError,
{
ast::PreprocessorVersionData {
version: <Token as Into<i32>>::into(v) as u16,
profile: p,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action343<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorExtensionBehaviorData
where
L: HasLexerError,
{
ast::PreprocessorExtensionBehaviorData::Require
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action344<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorExtensionBehaviorData
where
L: HasLexerError,
{
ast::PreprocessorExtensionBehaviorData::Enable
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action345<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorExtensionBehaviorData
where
L: HasLexerError,
{
ast::PreprocessorExtensionBehaviorData::Warn
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action346<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorExtensionBehaviorData
where
L: HasLexerError,
{
ast::PreprocessorExtensionBehaviorData::Disable
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action347<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorExtensionBehaviorData, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtensionBehavior
where
L: HasLexerError,
{
p.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action348<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, i, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, core::option::Option<ast::PreprocessorExtensionBehavior>, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
ast::PreprocessorExtensionData {
name: if i.as_str() == "all" {
ast::PreprocessorExtensionNameData::All.spanned(l, r)
} else {
ast::PreprocessorExtensionNameData::Specific(i.as_str().into()).spanned(l, r)
},
behavior: b,
}.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action349<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorDefine, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Define(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action350<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Else.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action351<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorElseIf, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::ElseIf(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action352<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::EndIf.spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action353<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorError, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Error(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action354<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorIf, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::If(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action355<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorIfDef, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::IfDef(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action356<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorIfNDef, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::IfNDef(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action357<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorInclude, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Include(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action358<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorLine, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Line(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action359<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorPragma, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Pragma(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action360<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorUndef, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Undef(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action361<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorVersion, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Version(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action362<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, p, _): (LexerPosition, ast::PreprocessorExtension, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
ast::PreprocessorData::Extension(p).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action363<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, p, _): (LexerPosition, ast::Preprocessor, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
Some(ast::ExternalDeclarationData::Preprocessor(p).spanned(l, r))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action364<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, f, _): (LexerPosition, ast::FunctionDefinition, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
Some(ast::ExternalDeclarationData::FunctionDefinition(f).spanned(l, r))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action365<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, d, _): (LexerPosition, ast::Declaration, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
Some(ast::ExternalDeclarationData::Declaration(d).spanned(l, r))
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action366<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action367<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, alloc::vec::Vec<Option<ast::ExternalDeclaration>>, LexerPosition),
) -> ast::TranslationUnit
where
L: HasLexerError,
{
ast::TranslationUnit(__0.into_iter().filter_map(|d| d).collect())
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action368<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action369<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Statement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action370<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TranslationUnit, LexerPosition),
) -> ast::TranslationUnit
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action371<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<Option<ast::ExternalDeclaration>>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action372<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<Option<ast::ExternalDeclaration>>, LexerPosition),
) -> alloc::vec::Vec<Option<ast::ExternalDeclaration>>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action373<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
) -> core::option::Option<ast::PreprocessorExtensionBehavior>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action374<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::PreprocessorExtensionBehavior>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action375<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
) -> ast::PreprocessorExtensionBehavior
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action376<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::PreprocessorVersionProfile, LexerPosition),
) -> core::option::Option<ast::PreprocessorVersionProfile>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action377<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::PreprocessorVersionProfile>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action378<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Token, LexerPosition),
) -> core::option::Option<Token>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action379<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<Token>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action380<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action381<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> core::option::Option<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action382<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action383<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action384<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action385<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::SingleDeclarationNoType, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action386<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> core::option::Option<ast::Initializer>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action387<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Initializer>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action388<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> ast::Initializer
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action389<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::FunctionParameterDeclaration>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action390<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::LayoutQualifierSpec>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action391<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Vec<ast::TypeSpecifier>, LexerPosition),
) -> core::option::Option<Vec<ast::TypeSpecifier>>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action392<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<Vec<ast::TypeSpecifier>>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action393<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, Vec<ast::TypeSpecifier>, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action394<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::TypeSpecifier>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action395<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::JumpStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Jump(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action396<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::IterationStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Iteration(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action397<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::CaseLabel, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::CaseLabel(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action398<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::SwitchStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Switch(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action399<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::SelectionStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Selection(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action400<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::Declaration, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Declaration(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action401<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::ExprStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Expression(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action402<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Statement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
ast::SelectionStatementData {
cond: Box::new(e),
rest: ast::SelectionRestStatementData::Else(Box::new(r), Box::new(s)).spanned(c, d),
}.spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action403<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::JumpStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Jump(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action404<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::IterationStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Iteration(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action405<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::CaseLabel, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::CaseLabel(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action406<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::SwitchStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Switch(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action407<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::SelectionStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Selection(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action408<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::Declaration, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Declaration(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action409<
'i,
L,
>(
ctx: &ParseContext,
(_, l, _): (LexerPosition, LexerPosition, LexerPosition),
(_, s, _): (LexerPosition, ast::ExprStatement, LexerPosition),
(_, r, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
ast::StatementData::Expression(s).spanned(l, r)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action410<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Statement, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
ast::SelectionStatementData {
cond: Box::new(e),
rest: ast::SelectionRestStatementData::Statement(Box::new(r)).spanned(c, d),
}.spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action411<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::SelectionStatement, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action412<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Condition, LexerPosition),
) -> core::option::Option<ast::Condition>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action413<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Condition>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action414<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
(_, e, _): (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.push(e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action415<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::Statement>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action416<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
) -> alloc::vec::Vec<ast::Statement>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action417<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> core::option::Option<ast::Expr>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action418<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Expr>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action419<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::TypeQualifierSpec>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action420<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
(_, e, _): (LexerPosition, ast::TypeQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::TypeQualifierSpec>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action421<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeQualifierSpec, LexerPosition),
) -> core::option::Option<ast::TypeQualifierSpec>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action422<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::TypeQualifierSpec>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action423<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::ArraySpecifier, LexerPosition),
) -> core::option::Option<ast::ArraySpecifier>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action424<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::ArraySpecifier>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action425<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::StructFieldSpecifier>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action426<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
) -> alloc::vec::Vec<ast::StructFieldSpecifier>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action427<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Identifier, LexerPosition),
) -> core::option::Option<ast::Identifier>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action428<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Identifier>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action429<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action430<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeQualifier, LexerPosition),
) -> core::option::Option<ast::TypeQualifier>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action431<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::TypeQualifier>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action432<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::ArraySpecifierDimension, LexerPosition),
) -> alloc::vec::Vec<ast::ArraySpecifierDimension>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action433<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::ArraySpecifierDimension>, LexerPosition),
(_, e, _): (LexerPosition, ast::ArraySpecifierDimension, LexerPosition),
) -> alloc::vec::Vec<ast::ArraySpecifierDimension>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action434<
'i,
L,
>(
ctx: &ParseContext,
(_, e, _): (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
match e {
None => v,
Some(e) => {
let mut v = v;
v.insert(0, e);
v
}
}
}
#[allow(unused_variables)]
fn __action435<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> LexerPosition
where
L: HasLexerError,
{
*__lookbehind
}
#[allow(unused_variables)]
fn __action436<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> LexerPosition
where
L: HasLexerError,
{
*__lookahead
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action437<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action438<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action439<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action440<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> core::option::Option<ast::Expr>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action441<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Expr>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action442<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action443<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action444<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action445<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::StructFieldSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::StructFieldSpecifier>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action446<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
(_, e, _): (LexerPosition, ast::StructFieldSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::StructFieldSpecifier>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action447<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Statement, LexerPosition),
) -> alloc::vec::Vec<ast::Statement>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action448<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
(_, e, _): (LexerPosition, ast::Statement, LexerPosition),
) -> alloc::vec::Vec<ast::Statement>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action449<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> core::option::Option<ast::Initializer>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action450<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::Initializer>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action451<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action452<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action453<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Initializer, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
) -> ast::Initializer
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action454<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, LexerPosition, LexerPosition),
(_, r, _): (LexerPosition, ast::Statement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, d, _): (LexerPosition, LexerPosition, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
ast::SelectionStatementData {
cond: Box::new(e),
rest: ast::SelectionRestStatementData::Else(Box::new(r), Box::new(s)).spanned(c, d),
}.spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action455<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, ast::Condition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::While(c, Box::new(s)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action456<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::DoWhile(Box::new(s), Box::new(c)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action457<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, init, _): (LexerPosition, ast::ForInitStatement, LexerPosition),
(_, rest, _): (LexerPosition, ast::ForRestStatement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::For(init, rest, Box::new(s)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action458<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, ast::Condition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::While(c, Box::new(s)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action459<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, c, _): (LexerPosition, ast::Expr, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::DoWhile(Box::new(s), Box::new(c)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action460<
'i,
L,
>(
ctx: &ParseContext,
(_, a, _): (LexerPosition, LexerPosition, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, init, _): (LexerPosition, ast::ForInitStatement, LexerPosition),
(_, rest, _): (LexerPosition, ast::ForRestStatement, LexerPosition),
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, s, _): (LexerPosition, ast::Statement, LexerPosition),
(_, b, _): (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
ast::IterationStatementData::For(init, rest, Box::new(s)).spanned(a, b)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action461<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action462<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action463<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action464<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> core::option::Option<ast::TypeSpecifier>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action465<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::TypeSpecifier>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action466<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action467<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action468<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> ast::LayoutQualifierSpec
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action469<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> core::option::Option<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action470<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action471<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action472<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action473<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action474<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> core::option::Option<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
Some(__0)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action475<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> core::option::Option<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
None
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action476<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::SingleDeclarationNoType, LexerPosition),
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action477<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
(_, e, _): (LexerPosition, ast::SingleDeclarationNoType, LexerPosition),
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action478<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
alloc::vec![]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action479<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
v
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action480<
'i,
L,
>(
ctx: &ParseContext,
(_, _, _): (LexerPosition, Token, LexerPosition),
(_, __0, _): (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::Identifier
where
L: HasLexerError,
{
__0
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action481<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, Option<ast::ExternalDeclaration>, LexerPosition),
) -> alloc::vec::Vec<Option<ast::ExternalDeclaration>>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action482<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<Option<ast::ExternalDeclaration>>, LexerPosition),
(_, e, _): (LexerPosition, Option<ast::ExternalDeclaration>, LexerPosition),
) -> alloc::vec::Vec<Option<ast::ExternalDeclaration>>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action483<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Identifier, LexerPosition),
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action484<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
(_, e, _): (LexerPosition, ast::Identifier, LexerPosition),
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action485<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action486<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
(_, e, _): (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action487<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action488<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
(_, e, _): (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action489<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action490<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
(_, e, _): (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action491<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action492<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
(_, e, _): (LexerPosition, ast::Initializer, LexerPosition),
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action493<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action494<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
(_, e, _): (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action495<
'i,
L,
>(
ctx: &ParseContext,
(_, __0, _): (LexerPosition, ast::Expr, LexerPosition),
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
alloc::vec![__0]
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action496<
'i,
L,
>(
ctx: &ParseContext,
(_, v, _): (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
(_, e, _): (LexerPosition, ast::Expr, LexerPosition),
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
{ let mut v = v; v.push(e); v }
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action497<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Vec<ast::TypeSpecifier>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> core::option::Option<Vec<ast::TypeSpecifier>>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __2.2;
let __temp0 = __action393::<
L,
>(
ctx,
__0,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action391::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action498<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Vec<ast::TypeSpecifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __3.2;
let __temp0 = __action497::<
L,
>(
ctx,
__1,
__2,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action299::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action499<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::StorageQualifierData
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action392::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action299::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action500<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action444::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action493::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action501<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> alloc::vec::Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action444::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action494::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action502<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action442::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action429::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action503<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action443::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action429::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action504<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Expr, LexerPosition),
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action439::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action495::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action505<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> alloc::vec::Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action439::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action496::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action506<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action437::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action434::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action507<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action438::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action434::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action508<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action473::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action485::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action509<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> alloc::vec::Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action473::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action486::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action510<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::FunctionParameterDeclaration>, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action471::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action389::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action511<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::FunctionParameterDeclaration>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action472::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action389::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action512<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action480::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action483::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action513<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Identifier, LexerPosition),
) -> alloc::vec::Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action480::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action484::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action514<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action478::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action380::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action515<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action479::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action380::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action516<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action468::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action487::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action517<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> alloc::vec::Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action468::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action488::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action518<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::LayoutQualifierSpec>, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action466::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action390::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action519<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::LayoutQualifierSpec>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action467::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action390::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action520<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::SingleDeclarationNoType, LexerPosition),
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action385::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action476::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action521<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::SingleDeclarationNoType, LexerPosition),
) -> alloc::vec::Vec<ast::SingleDeclarationNoType>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action385::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action477::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action522<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, ast::SingleDeclaration, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __temp0 = __action383::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action315::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action523<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, ast::SingleDeclaration, LexerPosition),
__2: (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __2.2;
let __temp0 = __action384::<
L,
>(
ctx,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action315::<
L,
>(
ctx,
__0,
__1,
__temp0,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action524<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action463::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action489::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action525<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> alloc::vec::Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action463::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action490::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action526<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeSpecifier>, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action461::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action394::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action527<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeSpecifier>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action462::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action394::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action528<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
) -> core::option::Option<ast::PreprocessorExtensionBehavior>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action375::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action373::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action529<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __3.2;
let __temp0 = __action528::<
L,
>(
ctx,
__2,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action348::<
L,
>(
ctx,
__0,
__1,
__temp0,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action530<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __temp0 = __action374::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action348::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action531<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Initializer, LexerPosition),
) -> core::option::Option<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action388::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action386::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action532<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FullySpecifiedType, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, ast::Initializer, LexerPosition),
) -> ast::SingleDeclarationData
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __3.2;
let __temp0 = __action531::<
L,
>(
ctx,
__2,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action311::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action533<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FullySpecifiedType, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::SingleDeclarationData
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action387::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action311::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action534<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, ast::Initializer, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __3.2;
let __temp0 = __action531::<
L,
>(
ctx,
__2,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action314::<
L,
>(
ctx,
__0,
__1,
__temp0,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action535<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, LexerPosition, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __temp0 = __action387::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action314::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action536<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Initializer, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __1.2;
let __temp0 = __action453::<
L,
>(
ctx,
__0,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action491::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action537<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
__1: (LexerPosition, ast::Initializer, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> alloc::vec::Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __2.2;
let __temp0 = __action453::<
L,
>(
ctx,
__1,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action492::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action538<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action451::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action414::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action539<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::Initializer>, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action452::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action414::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action540<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action206::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action541<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action207::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action542<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action220::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action543<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::ArraySpecifierDimension>, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArraySpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action22::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action544<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArraySpecifierDimensionData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArraySpecifierDimension
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action21::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action545<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action200::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action546<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, ast::AssignmentOp, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action234::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action547<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::AssignmentOpData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::AssignmentOp
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action246::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action548<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
__6: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action316::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action549<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabelData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::CaseLabel
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action253::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action550<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::CompoundStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action269::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action551<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ConditionData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Condition
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action259::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action552<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action232::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action553<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionPrototype, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action317::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action554<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InitDeclaratorList, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action318::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action555<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::DeclarationData, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action319::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action556<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Block, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action320::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action557<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action321::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action558<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action217::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action559<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action218::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action560<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action222::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action561<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action248::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action562<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ExprStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action249::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action563<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Preprocessor, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action363::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action564<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionDefinition, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action364::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action565<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action365::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action566<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ForInitStatementData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ForInitStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action262::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action567<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Condition>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action263::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action568<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FullySpecifiedType
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action187::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action569<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifierData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunIdentifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action190::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action570<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Vec<ast::Expr>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action17::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action571<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action18::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action572<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionPrototype, LexerPosition),
__1: (LexerPosition, ast::CompoundStatement, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionDefinition
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action322::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action573<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action308::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action574<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action309::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action575<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionParameterDeclarator
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action307::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action576<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FullySpecifiedType, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Vec<ast::FunctionParameterDeclaration>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::FunctionPrototype
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action310::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action577<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Identifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action1::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action578<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action224::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action579<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclaration, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action522::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action580<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclaration, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action523::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action581<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InitializerData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Initializer
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action256::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action582<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InterpolationQualifierData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::InterpolationQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action277::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action583<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Condition, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action455::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action584<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Statement, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
__7: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action456::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__7,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action585<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::ForInitStatement, LexerPosition),
__3: (LexerPosition, ast::ForRestStatement, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::Statement, LexerPosition),
__6: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action457::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action586<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Condition, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action458::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action587<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Statement, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
__7: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action459::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__7,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action588<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::ForInitStatement, LexerPosition),
__3: (LexerPosition, ast::ForRestStatement, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::Statement, LexerPosition),
__6: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action460::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action589<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatementData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::JumpStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action268::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action590<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Vec<ast::LayoutQualifierSpec>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::LayoutQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action305::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action591<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::LayoutQualifierSpecData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::LayoutQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action304::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action592<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action226::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action593<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action230::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action594<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action228::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action595<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action202::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action596<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action203::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action597<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action204::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action598<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action11::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action599<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Identifier, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action13::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action600<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action14::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action601<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action15::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action602<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PrecisionQualifierData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PrecisionQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action281::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action603<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorDefine, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action349::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action604<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action350::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action605<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorElseIf, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action351::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action606<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action352::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action607<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorError, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action353::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action608<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIf, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action354::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action609<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIfDef, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action355::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action610<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIfNDef, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action356::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action611<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorInclude, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action357::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action612<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorLine, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action358::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action613<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorPragma, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action359::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action614<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorUndef, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action360::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action615<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorVersion, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action361::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action616<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorExtension, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action362::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action617<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorDefineData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorDefine
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action327::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action618<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorElseIf
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action328::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action619<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorError
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action329::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action620<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action529::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action621<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action530::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action622<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorExtensionBehaviorData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorExtensionBehavior
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action347::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action623<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIf
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action330::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action624<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIfDef
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action331::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action625<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorIfNDef
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action332::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action626<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action333::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action627<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action334::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action628<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<Token>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorLine
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action335::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action629<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorPragma
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action336::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action630<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorUndef
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action337::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action631<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::PreprocessorVersionProfile>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorVersion
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action342::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action632<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorVersionProfileData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::PreprocessorVersionProfile
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action341::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action633<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action3::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action634<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action4::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action635<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action5::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action636<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action6::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action637<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action7::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action638<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action8::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action639<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action212::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action640<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action213::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action641<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action214::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action642<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action215::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action643<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
__6: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __3.2;
let __end1 = __4.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action410::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__temp1,
__4,
__5,
__6,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action644<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, ast::Statement, LexerPosition),
__7: (LexerPosition, LexerPosition, LexerPosition),
__8: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __3.2;
let __end1 = __4.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action454::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__temp1,
__4,
__5,
__6,
__7,
__8,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action645<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, ast::Statement, LexerPosition),
__7: (LexerPosition, LexerPosition, LexerPosition),
__8: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __3.2;
let __end1 = __4.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action402::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__temp1,
__4,
__5,
__6,
__7,
__8,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action646<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action209::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action647<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
__3: (LexerPosition, ast::Expr, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __start1 = __0.2;
let __end1 = __1.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action436::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action210::<
L,
>(
ctx,
__temp0,
__0,
__temp1,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action648<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action403::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action649<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::IterationStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action404::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action650<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabel, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action405::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action651<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SwitchStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action406::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action652<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SelectionStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action407::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action653<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action408::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action654<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ExprStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action409::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action655<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action395::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action656<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::IterationStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action396::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action657<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabel, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action397::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action658<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SwitchStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action398::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action659<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SelectionStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action399::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action660<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action400::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action661<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ExprStatement, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action401::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action662<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclarationData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action313::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action663<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Initializer, LexerPosition),
__3: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action534::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action664<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action535::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action665<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::StorageQualifierData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StorageQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action300::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action666<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__2: (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StructFieldSpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action23::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action667<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action24::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action668<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
__7: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::SwitchStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action250::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__7,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action669<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action185::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action670<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeName
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action2::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action671<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifierSpec>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action186::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action672<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action183::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action673<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action177::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action674<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArrayData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action174::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action675<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::StructSpecifier, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action175::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action676<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeName, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action176::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action677<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::UnaryOp, LexerPosition),
__1: (LexerPosition, ast::Expr, LexerPosition),
__2: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action192::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action678<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::UnaryOpData, LexerPosition),
__1: (LexerPosition, LexerPosition, LexerPosition),
) -> ast::UnaryOp
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action436::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action199::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action679<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action540::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action680<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action541::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action681<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action542::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action682<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::ArraySpecifierDimension>, LexerPosition),
) -> ast::ArraySpecifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action543::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action683<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArraySpecifierDimensionData, LexerPosition),
) -> ast::ArraySpecifierDimension
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action544::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action684<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action545::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action685<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, ast::AssignmentOp, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action546::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action686<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::AssignmentOpData, LexerPosition),
) -> ast::AssignmentOp
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action547::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action687<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, core::option::Option<ast::ArrayedIdentifier>, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __5.2;
let __end0 = __5.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action548::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action688<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabelData, LexerPosition),
) -> ast::CaseLabel
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action549::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action689<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::CompoundStatement
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action550::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action690<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ConditionData, LexerPosition),
) -> ast::Condition
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action551::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action691<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action552::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action692<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionPrototype, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action553::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action693<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InitDeclaratorList, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action554::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action694<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::DeclarationData, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action555::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action695<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Block, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action556::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action696<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::Declaration
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action557::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action697<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action558::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action698<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action559::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action699<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action560::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action700<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action561::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action701<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::ExprStatement
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action562::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action702<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Preprocessor, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action563::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action703<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionDefinition, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action564::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action704<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
) -> Option<ast::ExternalDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action565::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action705<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ForInitStatementData, LexerPosition),
) -> ast::ForInitStatement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action566::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action706<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::Condition>, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action567::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action707<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FullySpecifiedType
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action568::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action708<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifierData, LexerPosition),
) -> ast::FunIdentifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action569::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action709<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Vec<ast::Expr>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __3.2;
let __end0 = __3.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action570::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action710<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __3.2;
let __end0 = __3.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action571::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action711<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionPrototype, LexerPosition),
__1: (LexerPosition, ast::CompoundStatement, LexerPosition),
) -> ast::FunctionDefinition
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action572::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action712<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action573::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action713<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action574::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action714<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__1: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::FunctionParameterDeclarator
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action575::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action715<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FullySpecifiedType, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Vec<ast::FunctionParameterDeclaration>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::FunctionPrototype
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action576::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action716<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Identifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action577::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action717<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action578::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action718<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclaration, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action579::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action719<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclaration, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::SingleDeclarationNoType>, LexerPosition),
) -> ast::InitDeclaratorList
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action580::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action720<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InitializerData, LexerPosition),
) -> ast::Initializer
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action581::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action721<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::InterpolationQualifierData, LexerPosition),
) -> ast::InterpolationQualifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action582::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action722<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Condition, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action583::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action723<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Statement, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __6.2;
let __end0 = __6.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action584::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action724<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::ForInitStatement, LexerPosition),
__3: (LexerPosition, ast::ForRestStatement, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __5.2;
let __end0 = __5.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action585::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action725<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Condition, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action586::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action726<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Statement, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Expr, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __6.2;
let __end0 = __6.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action587::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action727<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::ForInitStatement, LexerPosition),
__3: (LexerPosition, ast::ForRestStatement, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::IterationStatement
where
L: HasLexerError,
{
let __start0 = __5.2;
let __end0 = __5.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action588::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action728<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatementData, LexerPosition),
) -> ast::JumpStatement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action589::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action729<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Vec<ast::LayoutQualifierSpec>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::LayoutQualifier
where
L: HasLexerError,
{
let __start0 = __3.2;
let __end0 = __3.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action590::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action730<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::LayoutQualifierSpecData, LexerPosition),
) -> ast::LayoutQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action591::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action731<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action592::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action732<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action593::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action733<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action594::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action734<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action595::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action735<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action596::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action736<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action597::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action737<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __3.2;
let __end0 = __3.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action598::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action738<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action599::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action739<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action600::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action740<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action601::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action741<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PrecisionQualifierData, LexerPosition),
) -> ast::PrecisionQualifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action602::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action742<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorDefine, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action603::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action743<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action604::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action744<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorElseIf, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action605::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action745<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action606::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action746<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorError, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action607::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action747<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIf, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action608::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action748<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIfDef, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action609::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action749<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorIfNDef, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action610::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action750<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorInclude, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action611::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action751<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorLine, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action612::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action752<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorPragma, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action613::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action753<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorUndef, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action614::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action754<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorVersion, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action615::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action755<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorExtension, LexerPosition),
) -> ast::Preprocessor
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action616::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action756<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorDefineData, LexerPosition),
) -> ast::PreprocessorDefine
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action617::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action757<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorElseIf
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action618::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action758<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorError
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action619::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action759<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::PreprocessorExtensionBehavior, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action620::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action760<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorExtension
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action621::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action761<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorExtensionBehaviorData, LexerPosition),
) -> ast::PreprocessorExtensionBehavior
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action622::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action762<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorIf
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action623::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action763<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::PreprocessorIfDef
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action624::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action764<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::PreprocessorIfNDef
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action625::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action765<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action626::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action766<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorInclude
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action627::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action767<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<Token>, LexerPosition),
) -> ast::PreprocessorLine
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action628::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action768<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorPragma
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action629::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action769<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::PreprocessorUndef
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action630::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action770<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::PreprocessorVersionProfile>, LexerPosition),
) -> ast::PreprocessorVersion
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action631::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action771<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::PreprocessorVersionProfileData, LexerPosition),
) -> ast::PreprocessorVersionProfile
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action632::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action772<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action633::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action773<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action634::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action774<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action635::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action775<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action636::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action776<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action637::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action777<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action638::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action778<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action639::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action779<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action640::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action780<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action641::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action781<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action642::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action782<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __start1 = __4.2;
let __end1 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action643::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action783<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __6.2;
let __end0 = __6.2;
let __start1 = __6.2;
let __end1 = __6.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action644::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action784<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::Statement, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
__6: (LexerPosition, ast::Statement, LexerPosition),
) -> ast::SelectionStatement
where
L: HasLexerError,
{
let __start0 = __6.2;
let __end0 = __6.2;
let __start1 = __6.2;
let __end1 = __6.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action645::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action785<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action646::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action786<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __start1 = __2.2;
let __end1 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
let __temp1 = __action435::<
L,
>(
ctx,
&__start1,
&__end1,
);
let __temp1 = (__start1, __temp1, __end1);
__action647::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
__temp1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action787<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action648::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action788<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::IterationStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action649::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action789<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabel, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action650::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action790<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SwitchStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action651::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action791<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SelectionStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action652::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action792<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action653::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action793<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ExprStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action654::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action794<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::JumpStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action655::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action795<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::IterationStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action656::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action796<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::CaseLabel, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action657::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action797<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SwitchStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action658::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action798<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SelectionStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action659::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action799<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Declaration, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action660::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action800<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ExprStatement, LexerPosition),
) -> ast::Statement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action661::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action801<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::SingleDeclarationData, LexerPosition),
) -> ast::SingleDeclaration
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action662::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action802<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Initializer, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __2.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action663::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action803<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::SingleDeclarationNoType
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action664::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action804<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::StorageQualifierData, LexerPosition),
) -> ast::StorageQualifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action665::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action805<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifier>, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__2: (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StructFieldSpecifier
where
L: HasLexerError,
{
let __start0 = __3.2;
let __end0 = __3.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action666::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action806<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::Identifier>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action667::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action807<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
) -> ast::SwitchStatement
where
L: HasLexerError,
{
let __start0 = __6.2;
let __end0 = __6.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action668::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__5,
__6,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action808<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action669::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action809<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::TypeName
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action670::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action810<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, core::option::Option<ast::TypeQualifierSpec>, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
) -> ast::TypeQualifier
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action671::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action811<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifierSpecData, LexerPosition),
) -> ast::TypeQualifierSpec
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action672::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action812<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::ArraySpecifier>, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action673::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action813<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArrayData, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action674::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action814<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::StructSpecifier, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action675::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action815<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeName, LexerPosition),
) -> ast::TypeSpecifierNonArray
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action676::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action816<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::UnaryOp, LexerPosition),
__1: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::Expr
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action677::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action817<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::UnaryOpData, LexerPosition),
) -> ast::UnaryOp
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action435::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action678::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action818<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, ast::ArraySpecifier, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action423::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action684::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action819<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> ast::ArrayedIdentifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action424::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action684::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action820<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition),
__1: (LexerPosition, ast::ArraySpecifier, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action423::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action812::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action821<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifierNonArray, LexerPosition),
) -> ast::TypeSpecifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action424::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action812::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action822<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __5.0;
let __end0 = __5.2;
let __temp0 = __action381::<
L,
>(
ctx,
__5,
);
let __temp0 = (__start0, __temp0, __end0);
__action687::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action823<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __4.2;
let __temp0 = __action382::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action687::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action824<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action381::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action502::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action825<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action382::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action502::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action826<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action381::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action503::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action827<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::ArrayedIdentifier>, LexerPosition),
) -> Vec<ast::ArrayedIdentifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action382::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action503::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action828<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action440::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action506::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action829<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action441::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action506::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action830<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action440::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action507::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action831<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Expr>, LexerPosition),
) -> Vec<ast::Expr>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action441::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action507::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action832<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Condition, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action412::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action706::<
L,
>(
ctx,
__temp0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action833<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, core::option::Option<ast::Expr>, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action413::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action706::<
L,
>(
ctx,
__temp0,
__0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action834<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Expr, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::ExprStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action417::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action701::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action835<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::ExprStatement
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action418::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action701::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action836<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Condition, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __2.2;
let __temp0 = __action417::<
L,
>(
ctx,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action832::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action837<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Condition, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __1.2;
let __temp0 = __action418::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action832::<
L,
>(
ctx,
__0,
__1,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action838<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Expr, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action417::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action833::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action839<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::ForRestStatement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action418::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action833::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action840<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Expr, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action417::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action267::<
L,
>(
ctx,
__0,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action841<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::JumpStatementData
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __1.0;
let __temp0 = __action418::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action267::<
L,
>(
ctx,
__0,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action842<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> ast::TranslationUnit
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action371::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action367::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action843<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<Option<ast::ExternalDeclaration>>, LexerPosition),
) -> ast::TranslationUnit
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action372::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action367::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action844<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action474::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action510::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action845<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action475::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action510::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action846<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionParameterDeclaration, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action474::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action511::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action847<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::FunctionParameterDeclaration>, LexerPosition),
) -> Vec<ast::FunctionParameterDeclaration>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action475::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action511::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action848<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action427::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action514::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action849<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action428::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action514::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action850<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Identifier, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action427::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action515::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action851<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Identifier>, LexerPosition),
) -> Vec<ast::Identifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action428::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action515::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action852<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action427::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action806::<
L,
>(
ctx,
__0,
__temp0,
__2,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action853<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __1.0;
let __temp0 = __action428::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action806::<
L,
>(
ctx,
__0,
__temp0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action854<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::Initializer, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action449::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action538::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action855<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action450::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action538::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action856<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
__1: (LexerPosition, ast::Initializer, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action449::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action539::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action857<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::Initializer>, LexerPosition),
) -> Vec<ast::Initializer>
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action450::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action539::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action858<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorLine
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action378::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action767::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action859<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorLine
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action379::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action767::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action860<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action469::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action518::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action861<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action470::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action518::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action862<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::LayoutQualifierSpec, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action469::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action519::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action863<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::LayoutQualifierSpec>, LexerPosition),
) -> Vec<ast::LayoutQualifierSpec>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action470::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action519::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action864<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::PreprocessorVersionProfile, LexerPosition),
) -> ast::PreprocessorVersion
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action376::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action770::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action865<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
) -> ast::PreprocessorVersion
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __0.2;
let __temp0 = __action377::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action770::<
L,
>(
ctx,
__0,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action866<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
) -> ast::CompoundStatement
where
L: HasLexerError,
{
let __start0 = __0.2;
let __end0 = __1.0;
let __temp0 = __action415::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action689::<
L,
>(
ctx,
__0,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action867<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::CompoundStatement
where
L: HasLexerError,
{
let __start0 = __1.0;
let __end0 = __1.2;
let __temp0 = __action416::<
L,
>(
ctx,
__1,
);
let __temp0 = (__start0, __temp0, __end0);
__action689::<
L,
>(
ctx,
__0,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action868<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, Token, LexerPosition),
) -> ast::SwitchStatement
where
L: HasLexerError,
{
let __start0 = __4.2;
let __end0 = __5.0;
let __temp0 = __action415::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action807::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action869<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, ast::Expr, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, alloc::vec::Vec<ast::Statement>, LexerPosition),
__6: (LexerPosition, Token, LexerPosition),
) -> ast::SwitchStatement
where
L: HasLexerError,
{
let __start0 = __5.0;
let __end0 = __5.2;
let __temp0 = __action416::<
L,
>(
ctx,
__5,
);
let __temp0 = (__start0, __temp0, __end0);
__action807::<
L,
>(
ctx,
__0,
__1,
__2,
__3,
__4,
__temp0,
__6,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action870<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
__4: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __3.0;
let __temp0 = __action425::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action822::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__3,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action871<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
__5: (LexerPosition, ast::ArrayedIdentifier, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __3.0;
let __end0 = __3.2;
let __temp0 = __action426::<
L,
>(
ctx,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action822::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__4,
__5,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action872<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __3.0;
let __temp0 = __action425::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action823::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action873<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::Block
where
L: HasLexerError,
{
let __start0 = __3.0;
let __end0 = __3.2;
let __temp0 = __action426::<
L,
>(
ctx,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action823::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action874<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __2.2;
let __end0 = __3.0;
let __temp0 = __action425::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action852::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action875<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, ast::Identifier, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
__3: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__4: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __3.0;
let __end0 = __3.2;
let __temp0 = __action426::<
L,
>(
ctx,
__3,
);
let __temp0 = (__start0, __temp0, __end0);
__action852::<
L,
>(
ctx,
__0,
__1,
__2,
__temp0,
__4,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action876<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __1.2;
let __end0 = __2.0;
let __temp0 = __action425::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action853::<
L,
>(
ctx,
__0,
__1,
__temp0,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action877<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, Token, LexerPosition),
__1: (LexerPosition, Token, LexerPosition),
__2: (LexerPosition, alloc::vec::Vec<ast::StructFieldSpecifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StructSpecifier
where
L: HasLexerError,
{
let __start0 = __2.0;
let __end0 = __2.2;
let __temp0 = __action426::<
L,
>(
ctx,
__2,
);
let __temp0 = (__start0, __temp0, __end0);
__action853::<
L,
>(
ctx,
__0,
__1,
__temp0,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action878<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifierSpec, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
) -> ast::TypeQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action421::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action810::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action879<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::TypeQualifierSpec>, LexerPosition),
) -> ast::TypeQualifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action422::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action810::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action880<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FullySpecifiedType
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action430::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action707::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action881<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FullySpecifiedType
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action431::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action707::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action882<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action430::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action712::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action883<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action431::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action712::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action884<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action430::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action713::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action885<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::FunctionParameterDeclarator, LexerPosition),
) -> ast::FunctionParameterDeclaration
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action431::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action713::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action886<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeQualifier, LexerPosition),
__1: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__2: (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition),
__3: (LexerPosition, Token, LexerPosition),
) -> ast::StructFieldSpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action430::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action805::<
L,
>(
ctx,
__temp0,
__1,
__2,
__3,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action887<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__1: (LexerPosition, Vec<ast::ArrayedIdentifier>, LexerPosition),
__2: (LexerPosition, Token, LexerPosition),
) -> ast::StructFieldSpecifier
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action431::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action805::<
L,
>(
ctx,
__temp0,
__0,
__1,
__2,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action888<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action464::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action526::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action889<
'i,
L,
>(
ctx: &ParseContext,
__lookbehind: &LexerPosition,
__lookahead: &LexerPosition,
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = *__lookbehind;
let __end0 = *__lookahead;
let __temp0 = __action465::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action526::<
L,
>(
ctx,
__temp0,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action890<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, ast::TypeSpecifier, LexerPosition),
__1: (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.2;
let __temp0 = __action464::<
L,
>(
ctx,
__0,
);
let __temp0 = (__start0, __temp0, __end0);
__action527::<
L,
>(
ctx,
__temp0,
__1,
)
}
#[allow(unused_variables)]
#[allow(clippy::too_many_arguments)]
fn __action891<
'i,
L,
>(
ctx: &ParseContext,
__0: (LexerPosition, alloc::vec::Vec<ast::TypeSpecifier>, LexerPosition),
) -> Vec<ast::TypeSpecifier>
where
L: HasLexerError,
{
let __start0 = __0.0;
let __end0 = __0.0;
let __temp0 = __action465::<
L,
>(
ctx,
&__start0,
&__end0,
);
let __temp0 = (__start0, __temp0, __end0);
__action527::<
L,
>(
ctx,
__temp0,
__0,
)
}
#[allow(clippy::type_complexity)]
pub trait __ToTriple<'i, L, >
where L: HasLexerError
{
fn to_triple(value: Self) -> Result<(LexerPosition,Token,LexerPosition), __lalrpop_util::ParseError<LexerPosition, Token, L::Error>>;
}
impl<'i, L, > __ToTriple<'i, L, > for (LexerPosition, Token, LexerPosition)
where L: HasLexerError
{
fn to_triple(value: Self) -> Result<(LexerPosition,Token,LexerPosition), __lalrpop_util::ParseError<LexerPosition, Token, L::Error>> {
Ok(value)
}
}
impl<'i, L, > __ToTriple<'i, L, > for Result<(LexerPosition, Token, LexerPosition), L::Error>
where L: HasLexerError
{
fn to_triple(value: Self) -> Result<(LexerPosition,Token,LexerPosition), __lalrpop_util::ParseError<LexerPosition, Token, L::Error>> {
match value {
Ok(v) => Ok(v),
Err(error) => Err(__lalrpop_util::ParseError::User { error }),
}
}
}